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