您的位置:首页 > 产品设计 > UI/UE

Codeforces 781B. Innokenty and a Football League

2017-03-06 10:07 357 查看
题目链接:http://codeforces.com/contest/781/problem/B

去tmd 2-SAT

直接贪心就可以过去了,优先选择第二种情况。

然而....可以被叉掉(数据水了)

2
ABC DDD
ABD DOG


View Code

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<map>
using namespace std;
#define maxn 1001000
#define llg long long
#define yyj(a) freopen(a".in","r",stdin),freopen(a".out","w",stdout);
llg n,m;
string a,s1,s2,la,b;
string ans[maxn];
map<string,bool>ma,mma;

int main()
{
yyj("D");
cin>>n;
for (llg k=1;k<=n;k++)
{
s1.clear(),s2.clear();
cin>>s1>>s2;
a.clear();
a=s1.substr(0,3);
b=s1.substr(0,2)+s2[0];
if (!ma[b])
{
ma[b]=1;
ans[k]=b;
mma[a]=1;
}
else
{
if (ma[a] || mma[a]){cout<<"NO"; return 0;}
ans[k]=a;
ma[a]=1;
}

}
cout<<"YES"<<endl;
for (llg i=1;i<=n;i++)
{
cout<<ans[i]<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: