求助,玄关
查看原帖
求助,玄关
1382038
linruicong楼主2025/1/31 11:13

题目

#include<bits/stdc++.h>
using namespace std;
int t,n,m,a[105][105],vis[105],dis[5],sum,tot; 
void fun()
{
	memset(a,0,sizeof a);
	memset(vis,0,sizeof vis);
	n=0;
	m=0;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++)
	{
		for(int j=1;j<=n;j++) scanf("%1d",&a[i][j]);
		scanf("%d",&a[i][0]);
	}
	for(int i=1;i<=m;i++)
	{
		if(vis[i]==1) continue;
		for(int j=i+1;j<=m;j++)
		{
			if(vis[j]==1) continue;
			if(a[i][0]!=a[j][0]) continue;
			for(int k=1;k<=n;k++)
			{
				if(a[i][k]==a[j][k])
				{
					vis[i]=1;
					vis[j]=1;
					break;
				}
			}
		}
	}
	for(int i=1;i<=m;i++)
	{
		if(vis[i]==1) continue;
		dis[a[i][0]]++;
		if(vis[i]==0) sum++;
	}
	tot=dis[0]>dis[1]?dis[0]:dis[1];
	for(int i=1;i<=m;i++)
	{
		if(a[i][0]==tot) sum--;
	}
	if(sum==0) printf("OK\n");
	else printf("LIE\n");
}
int main()
{
	scanf("%d",&t);
	while(t--) fun();
	return 0;
}

2025/1/31 11:13
加载中...