记录编号 |
588854 |
评测结果 |
AAAAAAAAAAAAAATTATTT |
题目名称 |
雨和卡布奇诺 |
最终得分 |
75 |
用户昵称 |
wdsjl |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
5.772 s |
提交时间 |
2024-07-01 17:27:02 |
内存使用 |
10.82 MiB |
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
const int N = 100010;
unordered_map<int,long long>w;
int m,n;
struct node{
vector<long long> a;
vector<long long> b;
vector<long long> c;
vector<long long> d;
bool f;
int l,k;
}z[N];
int ans;
int main(){
freopen("Cappuccino.in","r",stdin);
freopen("Cappuccino.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++){
long long t,u;
scanf("%lld%lld",&t,&u);
w[t]=u;
}
scanf("%d",&m);
for(int i=1;i<=m;i++){
z[i].f=true;
scanf("%d",&z[i].l);
for(int j=1;j<=z[i].l;j++){
long long x,y;
scanf("%lld%lld",&x,&y);
z[i].a.push_back(x);
z[i].b.push_back(y);
}
scanf("%d",&z[i].k);
for(int j=1;j<=z[i].k;j++){
long long x,y;
scanf("%lld%lld",&x,&y);
z[i].c.push_back(x);
z[i].d.push_back(y);
}
}
for(int i=1;i<=m;i++){
for(int j=1;j<=m;j++){
if(z[j].f==false)continue;
bool flag=true;
for(int k=0;k<z[j].l;k++){
if(w[z[j].a[k]]<z[j].b[k]){
flag=false;
break;
}
}
if(flag==false)continue;
ans++;
for(int k=0;k<z[j].k;k++)
w[z[j].c[k]]+=z[j].d[k];
z[j].f=false;
}
}
printf("%d",ans);
return 0;
}