记录编号 |
140700 |
评测结果 |
AAAAAAA |
题目名称 |
[NOIP 2003]神经网络 |
最终得分 |
100 |
用户昵称 |
席一鸣 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2014-11-23 21:54:23 |
内存使用 |
0.35 MiB |
显示代码纯文本
#include<cstdio>
#include<deque>
#include<iostream>
using namespace std;
main()
{
freopen("sjwl.in","r",stdin);
freopen("sjwl.out","w",stdout);
bool f[201]={0},h[201]={0},l=0,o[201]={0};
int a,b,c[201],i,m,n,u[201],w[201][201],x;
deque<int>s;
cin>>n>>m;
for(i=0;i<n;i++)
{
cin>>c[i]>>u[i];
if(c[i])
{
s.push_back(i);
o[i]=1;
}
else
c[i]=-1*u[i];
}
for(i=0;i<m;i++)
{
cin>>a>>b;
cin>>w[--a][--b];
h[a]=1;
}
while(!s.empty())
{
x=s.front();
s.pop_front();
o[x]=0;
if(!h[x]&&c[x]>0)
f[x]=1;
if(c[x]>0)
for(i=0;i<n;i++)
{
if(i==x||!w[x][i])
continue;
c[i]+=w[x][i]*c[x];
if(!o[i])
{
s.push_back(i);
o[i]=1;
}
}
}
for(i=0;i<n;i++)
if(f[i])
{
cout<<i+1<<' '<<c[i]<<endl;
l=1;
}
if(!l)
cout<<"NULL";
}