10 条题解
-
6
#include<bits/stdc++.h> using namespace std; vector<int>a[10001]; int d[10001],b[10001],tot; queue<int>q; int main(){ int n,m;cin>>n>>m; for(int i=1;i<=m;i++){ int u,v;cin>>u>>v; a[v].push_back(u); d[u]++; } for(int i=1;i<=n;i++) if(!d[i]){ q.push(i); b[i]=100; } while(q.size()){ tot++; int u=q.front(); q.pop(); for(int i=0;i<a[u].size();i++){ int v=a[u][i]; d[v]--; if(!d[v]){ q.push(v); b[v]=b[u]+1; } } } if(tot<n)cout<<"Poor Xed"; else{ tot=0; for(int i=1;i<=n;i++)tot+=b[i]; cout<<tot; } return 0; }
信息
- ID
- 471
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 359
- 已通过
- 99
- 上传者