Description

K国是一个热衷三角形的国度,连人的交往也只喜欢三角原则.他们认为三角关系:即AB相互认识,BC相互认识,CA相互认识,是简洁高效的.为了巩固三角关系,K国禁止四边关系,五边关系等等的存在.所谓N边关系,是指N个人 A1A2...An之间仅存在N对认识关系:(A1A2)(A2A3)...(AnA1),而没有其它认识关系.比如四边关系指ABCD四个人 AB,BC,CD,DA相互认识,而AC,BD不认识.全民比赛时,为了防止做弊,规定任意一对相互认识的人不得在一队,国王相知道,最少可以分多少支队。

Input

第一行两个整数N,M。1<=N<=10000,1<=M<=1000000.表示有N个人,M对认识关系. 接下来M行每行输入一对朋友

Output

输出一个整数,最少可以分多少队

Sample Input

4 5
1 2
1 4
2 4
2 3
3 4

Sample Output

3

HINT

一种方案(1,3)(2)(4)

 
最大势算法。。。是个什么鬼
弦图染色。。。我承认我还是不懂。大致就是说把一张图从大开始标记,同时为于标记点相连的点du++,下一个标记未标记点中du最大的点,以此形成一个队列
按照队列的顺序进行染色,每个点染上最小的颜色就ok了,我也不知道这样为什么是对的。。。
 #include<cstdio>
int n,m,cnt,ans,u,v,x,t;
int head[],du[],q[],col[],hash[];
bool vis[];
struct data{int to,next;}e[];
void ins(int u,int v)
{e[++cnt].to=v;e[cnt].next=head[u];head[u]=cnt;}
int main(){
scanf("%d%d",&n,&m);
for(int i=;i<=m;i++){
scanf("%d%d",&u,&v);
ins(u,v);ins(v,u);
}
du[]=-;
for(int i=n;i>=;i--){
int x=;
for(int j=;j<=n;j++)
if(!vis[j]&&du[j]>du[x]) x=j;
vis[x]=;q[i]=x;
for(int j=head[x];j;j=e[j].next){
int v=e[j].to;
du[v]++;
}
}
for(int i=n;i>;i--){
for(int j=head[q[i]];j;j=e[j].next) hash[col[e[j].to]]=i;
int j=;
while(hash[j]==i)j++;
col[q[i]]=j;
if(j>ans) ans=j;
}
printf("%d",ans);
}

最新文章

  1. 【CSS进阶】伪元素的妙用2 - 多列均匀布局及title属性效果
  2. 泛型(Generics)
  3. 基于netty的心跳机制实现
  4. [BZOJ 1295][SCOI2009]最长距离(SPFA+暴力)
  5. TYVJ P1031 热浪 Label:dijkstra 最短路
  6. C# 发送邮件代码
  7. iOS - Swift Set 集合
  8. (转)STL中set的用法
  9. 《c程序设计语言》读书笔记--每行一个单词打印输入的字符,除去空符
  10. TI公司与MSP430单片机
  11. JDK自带的日志Logging
  12. ubuntu Error fetching https://gems.ruby-china.org/: Errno::ECONNREFUSED: Connection refused
  13. thinkphp自动映射分析
  14. AE旋转
  15. AssemblyInfo.cs 详解
  16. 在win7_64bit + ubuntu-12.04-desktop-amd64+VMware-workstation-full-10.0.1-1379776平台上安装ns-allinone-2.35
  17. Java反射reflection与注解annotation的应用(自动测试机)
  18. Linux的进程/线程间通信方式总结
  19. Makefile的简单使用
  20. 重置linux mysql root密码

热门文章

  1. 六、Android学习笔记_JNI_c调用java代码
  2. Java类加载的时机_4种主动引用会触犯类加载+剩下的被动引用不会触发类的加载
  3. Lua数据结构的学习笔记
  4. 使用vhd灌装系统&mdash;&mdash;测试系统专用
  5. iOS 高阶
  6. js选中下拉框的默认选项
  7. c#扩展方法-摘自msdn
  8. 10 个非常有用的 AngularJS 框架
  9. 7 款令人赞叹的 HTML5 动画应用
  10. PSP编程初探 Hello World