题目传送门

这道题呢 每次输入一段数就把1~n里面没有在这组数里面的数和他们连一波 表示这些数比他们等级低 然后就搞一搞就好了哇

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int M=;
int read(){
int ans=,f=,c=getchar();
while(c<''||c>''){if(c=='-') f=-; c=getchar();}
while(c>=''&&c<=''){ans=ans*+(c-''); c=getchar();}
return ans*f;
}
int f[M][M],cnt;
int in[M],x,n,m,v,sum[M];
int head,tail,ans=,q[M],num[M];
int main()
{
n=read(); m=read();
while(m--){
v=read(); cnt++;
for(int i=;i<=v;i++) q[i]=read(),sum[q[i]]=cnt;
for(int i=q[];i<=q[v];i++)if(sum[i]!=cnt){
for(int k=;k<=v;k++)
if(!f[i][q[k]]) f[i][q[k]]=,in[q[k]]++;
}
}
for(int i=;i<=n;i++) if(!in[i]) q[tail++]=i,num[i]++;
while(head!=tail){
int x=q[head++]; if(head>M) head=;
for(int i=;i<=n;i++) if(f[x][i]){
in[i]--;
if(!in[i]) {q[tail++]=i; num[i]=num[x]+;}
}
}
for(int i=;i<=n;i++) ans=max(ans,num[i]);
printf("%d\n",ans);
return ;
}

最新文章

  1. Lesson 23 A new house
  2. (转)Singleton 单例模式(懒汉方式和饿汉方式)
  3. Sqli-labs less 62
  4. Many To one 多对一
  5. Bzoj4556: [Tjoi2016&amp;Heoi2016]字符串 后缀数组
  6. android 上传图片到服务器Tomcat(Struts2)
  7. ng-class的使用
  8. delphi 程序窗体及控件自适应分辨率(通过ComponentCount遍历改变字体大小以及上下左右)
  9. 解读CSS的背景(background)样式
  10. JAVA 中的RMI是什么
  11. ios上禁止输入表情
  12. Object修改链表
  13. 关于oracle sql语句查询时表名和字段名要加双引号的问题详解
  14. deep learning RNN
  15. Spock - Document -04- Interaction Based Testing
  16. jquery发起get/post请求_或_获取html页面数据
  17. Java的反射机制与泛型擦除
  18. TCP/IP协议层
  19. php 根据身份证获取出身地址
  20. ELK系列六:Logstash的Filter模块

热门文章

  1. sed 集合(项目中的笔记)
  2. Java的框架是什么意思
  3. 前端----css总结
  4. CSP201509-1:数组分段
  5. Spring实战第四章学习笔记————面向切面的Spring
  6. libvirt保持虚拟机运行情况下修改名称
  7. f3d源码解读
  8. remix无法安装的解决方案
  9. mongoDB 常用操作CRUD
  10. lintcode-109-数字三角形