#include<bits/stdc++.h>
using namespace std;
int m,n,ans,s,top,st[1010],tuopu[1010][1010],de[1010],tt[1010];
bool is[1010],bo[1010];
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
memset(is,0,sizeof(is));
cin>>s;
for(int j=1;j<=s;j++){
cin>>st[j];
is[st[j]]=true;
}
for(int j=st[1];j<=st[s];j++){
if(!is[j]){
for(int z=1;z<=s;z++){
if(!tuopu[j][st[z]]){
tuopu[j][st[z]]=1;
de[st[z]]++;
}
}
}
}
}
do{
top=0;
for(int i=1;i<=n;i++){
if(de[i]==0 && !bo[i]){
tt[++top]=i;
bo[i]=true;
}
}
for(int i=1;i<=top;i++){
for(int j=1;j<=n;j++){
if(tuopu[tt[i]][j]){
tuopu[tt[i]][j]=0;
de[j]--;
}
}
}
ans++;
}while(top);
cout<<ans-1;
return 0;
}
CSP-J 2013 T4 车站分级
最新推荐文章于 2026-01-04 19:40:08 发布
1227

被折叠的 条评论
为什么被折叠?



