uva 193 - Graph Coloring
2013-05-08 17:48
381 查看
感觉是学长的博客,因为看到了一句话:有些事们不是因为看到了希望才去坚持,而是坚持了才会看到希望。
这个是深搜的题目,然后就是枚举每一个点的黑白情况,黑用1表示,核心是递归。
这个是深搜的题目,然后就是枚举每一个点的黑白情况,黑用1表示,核心是递归。
#include<cstdio> #include<cstring> using namespace std; int n,k,maze[110][110],node[110]; int temp[110],max,mm; int isok(int cur) { for(int i=1;i<=n;i++) if(maze[cur][i]&&node[i]) return 0; return 1; } void dfs(int cur) { if(cur==n+1) { mm=0; for(int i=1; i<=n; i++) { if(node[i]) mm++; } if(mm>max) { for(int i=1,j=0; i<=n; i++) if(node[i]) temp[j++]=i; max=mm; } } else { node[cur]=0; dfs(cur+1); node[cur]=1; if(isok(cur)) dfs(cur+1); node[cur]=0; } } int main() { /*freopen("in.txt","r",stdin);*/ int cas; scanf("%d",&cas); while(cas--) { scanf("%d %d",&n,&k); memset(maze,0,sizeof(maze)); memset(node,0,sizeof(node)); for(int i=0; i<k; i++) { int a,b; scanf("%d%d",&a,&b); maze[a][b]=maze[b][a]=1; } max=0; dfs(1); printf("%d\n",max); for(int i=0;i<max-1;i++) printf("%d ",temp[i]); printf("%d\n",temp[max-1]); } return 0; }
相关文章推荐
- UVa 193 - Graph Coloring
- UVA - 193 Graph Coloring
- uva 193 Graph Coloring
- UVA - 193 Graph Coloring(回溯)
- UVA - 193 Graph Coloring
- uva 193 - Graph Coloring
- uva 193 Graph Coloring
- uva 193 Graph Coloring(DFS)
- UVA 193 Graph Coloring
- uva 193 Graph Coloring( 图染色 ) DFS+回溯
- UVA 193 - Graph Coloring
- UVA 193 - Graph Coloring
- UVa 193 - Graph Coloring(graph theory, brute force, backtracking, NP-complete, maximum independent set.)
- poj 1419 Graph Coloring uva 193 - Graph Coloring (图着色问题,dfs)
- UVa 193 - Graph Coloring
- UVa 193 - Graph Coloring
- Uva 193 - Graph Coloring
- uva193 - Graph Coloring
- uva 193 Graph Coloring
- UVA 193 Graph Coloring 图染色 DFS 数据