欢迎光临散文网 会员登陆 & 注册

洛谷P1038神经网络

2023-07-07 15:22 作者:喵雕沙  | 我要投稿

#include <iostream>

using namespace std;

const int mx=105;

int n,p,s,t,ready,finish=1,c[mx],u[mx],rd[mx],cd[mx],g[mx][mx],num[mx];

bool is;


int main()

{

cin>>n>>p;

for(int i=1;i<=n;i++)

{

cin>>c[i]>>u[i];

c[i]-=u[i];

}

for(int i=1;i<=p;i++)

{

cin>>s>>t;

cin>>g[s][t];

rd[t]++;

cd[s]++;

}

for(int i=1;i<=n;i++)

if(rd[i]==0)

{

num[++finish]=i;

c[i]+=u[i];

}

while(ready<finish)

{

ready++;

if(c[num[ready]]>0)

{

for(int i=1;i<=n;i++)

if(g[num[ready]][i]!=0)

{

c[i]+=g[num[ready]][i]*c[num[ready]];

num[++finish]=i;

}

if(cd[num[ready]]!=0)

c[num[ready]]=0;

}

}

for(int i=1;i<=n;i++)

if(c[i]>0)

{

is=true;

cout<<i<<" "<<c[i]<<endl;

}

if(!is)

cout<<"NULL"<<endl;

return 0;

}

洛谷P1038神经网络的评论 (共 条)

分享到微博请遵守国家法律