Uva 193 - Graph Coloring
2013-04-29 13:00
417 查看
Graph Coloring |
题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=129
#include<cstdio> #include<iostream> #include<cstring> #include<cmath> #define MAXN 110 using namespace std; int graph[MAXN][MAXN]; int note[MAXN], visit[MAXN], flag[MAXN], store[MAXN]; int n, _max; int Traverse(int cur, int sum) { int choice = 1; if(_max < sum) { _max = sum; memcpy(store, flag, sizeof(int)*(n+1)); } if(sum+n-cur+1 <= _max) return 0; for(int i=1; i<=n; ++i) if(graph[cur][i] && flag[i] != 0) { choice = 0; break; } if(choice == 1) { flag[cur] = 1; Traverse(cur+1, sum+1); flag[cur] = 0; } Traverse(cur+1, sum); return 0; } int main() { #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); #endif int T; cin>>T; while(T--) { int k; cin>>n>>k; memset(graph, 0, sizeof(graph)); memset(flag, 0, sizeof(flag)); memset(store, 0, sizeof(store)); for(int i=0; i<k; ++i) { int from, to; cin>>from>>to; graph[from][to] = graph[to][from] = 1; } _max = 0; Traverse(1, 0); printf("%d\n", _max); for(int i=1,j=0; i<=n; ++i) { if(store[i] != 0) { if(j++ == 0) printf("%d", i); else printf(" %d", i); } } printf("\n"); } return 0; }
我能告诉你我错了无数遍吗?算了吧,菜鸟一个就是蛋疼!!!这次是想着减少不必要的遍历,却发现改来改去都是WA,肯定不知道哪里错了,花了一个早上的时间也算对得住它,起码自己的抗压能力又提高到了一个层次
相关文章推荐
- UVA 193 - Graph Coloring
- UVA 193 - Graph Coloring
- uva 193 - Graph Coloring
- poj 1419 Graph Coloring uva 193 - Graph Coloring (图着色问题,dfs)
- UVa 193 - Graph Coloring(graph theory, brute force, backtracking, NP-complete, maximum independent set.)
- UVa 193 - Graph Coloring
- UVa 193 - Graph Coloring
- uva193 - Graph Coloring
- uva 193 Graph Coloring
- UVA 193 Graph Coloring 图染色 DFS 数据
- uva 193 Graph Coloring
- UVa 193 & POJ 1419 - Graph Coloring
- UVA 193 Graph Coloring
- [回溯]Graph Coloring UVA193
- UVA 193 Graph Coloring 图染色 DFS 数据
- uva 193 Graph Coloring(图染色 dfs回溯)
- UVa 193 - Graph Coloring
- UVA 193 Graph Coloring
- uva - 193 Graph Coloring(回溯)
- UVa 193 - Graph Coloring