题意:

最多能选取多少点,没有边相连。

解法:

取反图,求最大团

代码:

  1. #include<cstdio>
  2. #include<cstring>
  3. #include<iostream>
  4. using namespace std;
  5. const int maxn=11000;
  6. int e,ans,res,n,m,head[110],nxt[maxn],pnt[maxn],color[110],ansa[110];
  7. bool vis[110];
  8. void AddEdge(int u,int v)
  9. {
  10. nxt[e]=head[u];pnt[e]=v;head[u]=e++;
  11. nxt[e]=head[v];pnt[e]=u;head[v]=e++;
  12. }
  13. void DFS(int u,int cnt)
  14. {
  15. if(u==n+1)
  16. {
  17. if(cnt>ans)
  18. {
  19. ans=cnt;
  20. memcpy(ansa,color,sizeof(color));
  21. }
  22. return;
  23. }
  24. bool can=true;
  25. for(int i=head[u];i!=-1;i=nxt[i])
  26. if(color[pnt[i]])
  27. {
  28. can=false;
  29. break;
  30. }
  31. if(can)
  32. {
  33. color[u]=1;
  34. DFS(u+1,cnt+1);
  35. color[u]=0;
  36. }
  37. if(cnt+n-u>ans)
  38. DFS(u+1,cnt);
  39. }
  40. int main()
  41. {
  42. int T;
  43. scanf("%d",&T);
  44. while(T--)
  45. {
  46. ans=e=0;
  47. memset(head,-1,sizeof(head));
  48. memset(vis,0,sizeof(vis));
  49. scanf("%d%d",&n,&m);
  50. for(int i=0;i<m;i++)
  51. {
  52. int u,v;
  53. scanf("%d%d",&u,&v);
  54. AddEdge(u,v);
  55. }
  56. ans=0;
  57. DFS(1,0);
  58. printf("%d\n",ans);
  59. bool first=1;
  60. for(int i=1;i<=n;i++)
  61. if(ansa[i])
  62. {
  63. if(first)
  64. {
  65. printf("%d",i);
  66. first=0;
  67. }
  68. else
  69. printf(" %d",i);
  70. }
  71. printf("\n");
  72. }
  73. return 0;
  74. }

【最大点独立集】【poj1419】【Graph Coloring】的更多相关文章

  1. POJ1419 Graph Coloring(最大独立集)(最大团)

                                                               Graph Coloring Time Limit: 1000MS   Memor ...

  2. POJ1419 Graph Coloring

    嘟嘟嘟 求无向图的最大独立集. 有这么一回事:最大独立集=补图的最大团. 所谓的最大团,就是一个子图,满足图中任意两点都有边. 然后ssy巨佬告诉了我一个很没有道理强的做法:随机. 每一次random ...

  3. poj1419 Graph Coloring 最大独立集(最大团)

    最大独立集: 顶点集V中取 K个顶点,其两两间无连接. 最大团: 顶点集V中取 K个顶点,其两两间有边连接. 最大独立集=补图的最大团最大团=补图的最大独立集 #include<iostream ...

  4. 【POJ】1419:Graph Coloring【普通图最大点独立集】【最大团】

    Graph Coloring Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5775   Accepted: 2678   ...

  5. poj 1419 Graph Coloring

    http://poj.org/problem?id=1419 题意: 一张图黑白染色,相邻点不能都染黑色,最多能染几个黑色点 最大点独立集 但是图不能同构为二分图,不能用二分图匹配来做 那就爆搜吧 还 ...

  6. LightOJ1171 Knights in Chessboard (II)(二分图最大点独立集)

    题目 Source http://www.lightoj.com/volume_showproblem.php?problem=1171 Description Given an m x n ches ...

  7. POJ1466 Girls and Boys(二分图最大点独立集)

    最大点独立集就是无向图中最多的两两不相邻的点集. 二分图最大点独立集=顶点数-二分图最大边独立集(二分图最大匹配) 这一题男女分别作YX部,如果x和y有浪漫关系则连边,如此构造二分图,答案显然就是最大 ...

  8. POJ 1419 Graph Coloring(最大独立集/补图的最大团)

    Graph Coloring Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4893   Accepted: 2271   ...

  9. uva193 - Graph Coloring

    Graph Coloring You are to write a program that tries to find an optimal coloring for a given graph. ...

  10. POJ 2771 Guardian of Decency(求最大点独立集)

    该题反过来想:将所有可能发生恋爱关系的男女配对,那么可以带出去的人数应该等于这个二分图的最大独立集 先要做一下预处理,把不符合要求的双方先求出来, company[i][j]表示i.j四个标准都不符合 ...

随机推荐

  1. [破解] DRM-内容数据版权加密保护技术学习(上):视频文件打包实现

    1. DRM介绍: DRM,英文全称Digital Rights Management, 可以翻译为:内容数字版权加密保护技术. DRM技术的工作原理是,首先建立数字节目授权中心.编码压缩后的数字节目 ...

  2. toj2867 Picking Problem

    题目链接:http://acm.tju.edu.cn/toj/showp.php?pid=2867 题目大意:给定一系列活动的开始时间和结束时间,问最多能参加的活动数目 思路:// 本题属于最大区间调 ...

  3. 一个非常给力的播放器video-js

    video-js采用的是html5播放器. 在不支持html5的浏览器会自动切换成flash. video-js的官网http://www.videojs.com/ 看看下载的demo就知道个大概了. ...

  4. 【沙茶了+筛选保存最大质因数】【HDU2136】Largest prime factor

    Largest prime factor Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  5. jquery方法详解

    jquery方法详解 http://www.365mini.com/doc

  6. ‘Microsoft.Jet.OLEDB.4.0’ provider is not registered

    正如以下msdn论坛所述,Microsoft.Jet.OLEDB.4.0只有32bit,所以我们必须compile application to x86 platform. http://social ...

  7. jquery 综合使用例子

    效果如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  8. c++ iostream 相关使用

    索引: C++的iostream标准库介绍+使用详解(转) iostream格式化输出 c++ 字符串流 sstream(常用于格式转换) 关于#include <iomanip>中iom ...

  9. centos安装如何选择安装包

    1.根据经验,选择安装包时应该按最小化原则,即不需要的或者不确定是否需要的就不安装,这样可以最大程度上确保系统安全. 2.如果安装过程落了部分包组或者其他伙伴安装时没选,再安装后可以按如下方式补上安装 ...

  10. HTML5数组方法

    ***************************** forEach方法 *****************************   <script>var data = [1, ...