Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
139160 周震东 四色地图 C++ 通过 100 0 MS 264 KB 734 2024-03-21 19:25:31

Tests(10/10):


#include<bits/stdc++.h> using namespace std; #define N 101 int m; set <int> Map[N]; int Color[N]; int Try(int k) { for(set<int>::iterator i=Map[k].begin(); i!=Map[k].end(); i++) if(Color[(*i)]==Color[k] && k!=*i) return 0; return 1; } int main() { cin>>m; char c; getchar(); for(int i=1; i<=m; i++) do { int num=0; for(c=getchar(); c>='0' && c<='9'; c=getchar()) num=(num<<3)+(num<<1)+(c^48); Map[i].insert(num); Map[num].insert(i); } while(c!='\n'); for(int k=1; k<=m;) { do Color[k]++; while((Color[k]<=4)&&(!Try(k))); if(Color[k]>4) k--; else Color[++k]=0; } for(int i=1; i<=m; i++) printf("%d%c",Color[i],(i==m?'\n':' ')); return 0; }


测评信息: