比赛 USACO银组复现(ION ONLINE模拟赛) 评测结果 AWWWAWWWWWWWWWWW
题目名称 Cowntact Tracing 最终得分 12
用户昵称 锝镆氪锂铽 运行时间 0.009 s
代码语言 C++ 内存使用 13.66 MiB
提交时间 2020-04-06 17:17:10
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;

struct index{
	int l,r;
}b[251];

int n,T;
int a[101]={0};
int kma=0,kmi[101]={0},km=0,ans=0;

int main(void){
	freopen("usaco_20Open_tracing.in","r",stdin);
	freopen("usaco_20Open_tracing.out","w",stdout);
	scanf("%d%d",&n,&T);
	char ch;
	for(int i=1;i<=n;i++){
		cin>>ch;
		if(ch=='1')
			a[i]=1;
	}
	for(int i=1,t,x,y;i<=T;i++){
		scanf("%d%d%d",&t,&x,&y);
		b[t].l=x;
		b[t].r=y;
	}
	for(int i=1;i<=250;i++){
		if(b[i].l!=0&&b[i].r!=0){
			if(a[b[i].l]!=0&&a[b[i].r]!=0){
				if(a[b[i].l]!=-1){
					ans++;
					kmi[b[i].l]++;
				}
				if(a[b[i].r]!=-1){
					ans++;
					kmi[b[i].r]++;
				}
			}
			else{
				a[b[i].l]=-1;
				a[b[i].r]=-1;
			}
		}
	}
	printf("%d ",ans);
	for(int i=1;i<=n;i++){
		if(kmi[i]>km)
			km=kmi[i];
	}
	printf("%d ",km);
	if(kma==0){
		printf("Infinity");
	}
	return 0;
}