记录编号 |
550753 |
评测结果 |
AAAAAAAAAA |
题目名称 |
奖金 |
最终得分 |
100 |
用户昵称 |
夜莺 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.055 s |
提交时间 |
2020-03-16 13:19:18 |
内存使用 |
16.31 MiB |
显示代码纯文本
#include<cstdio>
using namespace std;
int du[10010],a[10010][310],pai[10010];
int n,m,money;
bool top(){
int t,num=0,k=0;
while(num<n){
t=0;
for(int i=1;i<=n;i++){
if(du[i]==0){
num++;
pai[++t]=i;
money+=100;
du[i]=0x7f;
}
}
if(t==0)return false;
money+=k*t;
k++;
for(int i=1;i<=t;i++){
for(int j=1;j<=a[pai[i]][0];j++)
du[a[pai[i]][j]]--;
}
}
return true;
}
int main(){
freopen("reward_data.in","r",stdin);
freopen("reward_data.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=1,x,y;i<=m;i++){
scanf("%d%d",&x,&y);
a[y][++a[y][0]]=x;
du[x]++;
}
if(top())printf("%d",money);
else printf("Poor Xed");
return 0;
}