比赛 2024暑期C班集训1 评测结果 EEEEEEEEEEEEEEEEEEEE
题目名称 雨和卡布奇诺 最终得分 0
用户昵称 健康铀 运行时间 3.466 s
代码语言 C++ 内存使用 36.90 MiB
提交时间 2024-07-01 11:16:40
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1010],b[1010][1010][2],c[1010][1010][2],k[1010],l[1010],bj[1010],ans;
int main(){
    freopen("Cappuccino.in","r",stdin);
    freopen("Cappuccino.out","W",stdout);
    cin>>n;
    for(int i=1;i<=n;i++){
        int x,y;
        cin>>x>>y;
        a[x]=y;
    }
    cin>>m;
    for(int i=1;i<=m;i++){
        int k1,l1;
        cin>>l1;
        for(int j=1;j<=l1;j++)
        cin>>b[i][j][1]>>b[i][j][2]; 
        l[i]=l1;
        cin>>k1;
        for(int j=1;j<=k1;j++)
        cin>>c[i][j][1]>>c[i][j][2];
        k[i]=k1;
    }
    int pt=1;
    while(pt){
        pt=0;
        for(int i=1;i<=m;i++){
            int pd=1;
            if(bj[i]==0){
              for(int j=1;j<=l[i];j++){
                if(a[b[i][j][1]]<b[i][j][2]){
                     pd=0;
                }
              }  
              if(pd==1){
                  bj[i]=1;
                  ans++;
                  for(int j=1;j<=k[i];j++){
                     a[c[i][j][1]]+=c[i][j][2];
                  }  
                  pt=1;
              }
            }
        }
    }
    cout<<ans;
    return 0;
}