比赛 EYOI与SBOI开学欢乐赛4th 评测结果 AWAAA
题目名称 Cafe Stella 最终得分 80
用户昵称 00000 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2022-09-12 21:24:35
显示代码纯文本
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n;
string a[20][20];
int mark[20][20];
int ans[20],k;
int flag=0;
char p;
int fnd(int x,int y)
{
	p=a[x][y][0];
	for(int q=1;q<=n;q++)
	{
		if(a[1][q][0]==p)
		{
			return q;
		}
	}
}
int main(){
	freopen("murasame_adultxp3.in","r",stdin);
	freopen("murasame_adultxp3.out","w",stdout);
cin>>n;
for(int q=1;q<=n;q++)
{
	for(int w=1;w<=n;w++)
	{
		cin>>a[q][w];
		if(a[q][w].length()!=1)
		{
			flag=1;
			p=a[q][w][0];
			a[q][w]=a[q][w][1];
			mark[q][w]=1;
		}
//		cout<<a[q][w]<<" ";
	} 
//	cout<<endl;
}
if(flag==0)
{
	cout<<"FccKcuf";return 0;
} 
int one;
for(int q=1;q<=n;q++)
{
	if(a[1][q][0]==p)
	{
		ans[q]=1;one=q;//记录等于一的位置 
	}
}
int z=1;
int po=one;//记录此位 
for(int q=2;q<=n-1;q++)
{
	po=fnd(one,po);
	ans[po]=q;
}
int d[20];
int ch[20];
flag=0;
for(int q=n-1;q<=10;q++)
{
	memset(ch,0,sizeof(ch));
	memcpy(d,ans,sizeof(d));
	for(int w=2;w<=n;w++)
	{
		if(d[w]>=q) d[w]-=q; 
	}
	for(int w=2;w<=n;w++)
	{
		if(ch[d[w]]==0&&d[w]<q)
		{
			ch[d[w]]=1;
		}else
		{
			break;
		}
		if(w==n) flag=1;
	}
	if(flag==1)
	{
		k=q;break;
	} 
}
if(flag==0)
{
	cout<<"FccKcuf";return 0;
} 
for(int q=2;q<=n;q++)
{
	if(ans[q]>=k) ans[q]-=k;
}
for(int q=2;q<=n;q++)
{
	cout<<a[1][q]<<"="<<ans[q]<<" ";
} 
cout<<endl<<k;
return 0;
}