Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
107569 | 毛泓博(做题专用,大号Fess) | 四色地图 | C++ | 解答错误 | 0 | 0 MS | 252 KB | 548 | 2023-10-25 13:54:16 |
#include<bits/stdc++.h> using namespace std; int n,link[27][2],t,s[27],flag; void dfs(int cur) { if(s[cur]) return; if(s[link[cur][0]]&&s[link[cur][1]]) flag=1; for(int k=0;k<=1;k++) { for(int i=1;i<=4;i++) if(i!=s[link[cur][0]]&&i!=s[link[cur][1]]) { s[cur]=i; if(flag) { for(int j=1;j<=n;j++) cout<<s[j]<<' '; exit(0); } if(!s[link[cur][k]]) dfs(link[cur][k]); s[cur]=0; } } } int main() { cin>>n; for(int i=1;i<=n;i++) cin>>t,cin>>link[t][0]>>link[t][1]; dfs(1); }