Exber @ 2021-08-04 08:38:46
rt,萌新刚学 OI,不知道为啥会 RE……
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#define S 1000005
#define MS 100005
using namespace std;
int n,m,stop[MS];
int esum,to[S],nxt[S],h[MS];
int ind[MS],lev[MS];
int ans;
inline void add(int x,int y)
{
to[++esum]=y;
nxt[esum]=h[x];
h[x]=esum;
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++)
{
int s;
scanf("%d",&s);
for(int j=1;j<=s;j++)
{
scanf("%d",&stop[j]);
}
for(int j=stop[1];j<=stop[s];j++)
{
bool f=false;
for(int k=1;k<=s;k++)
{
if(j==stop[k])
{
f=true;
break;
}
}
if(f)
{
continue;
}
for(int k=1;k<=s;k++)
{
add(j,stop[k]);
ind[stop[k]]++;
}
}
}
queue<int> q;
for(int i=1;i<=n;i++)
{
if(ind[i]==0)
{
q.push(i);
lev[i]=1;
}
}
while(!q.empty())
{
int u=q.front();
q.pop();
ans=max(ans,lev[u]);
for(int i=h[u];i;i=nxt[i])
{
int v=to[i];
lev[v]=max(lev[v],lev[u]+1);
if(!--ind[v])
{
q.push(v);
}
}
}
printf("%d\n",ans);
return 0;
}
by chlchl @ 2021-10-04 16:41:34
@lovely_ckj 大佬绿蓝紫黑
by Exber @ 2021-10-04 17:30:18
@caihaolang 毕竟没勾
by chlchl @ 2021-10-04 18:48:07
@lovely_ckj ……有勾还不是一个支付宝的事?就您这实力起码绿勾好吧……