[codevs1088]神经网络
来源:互联网 发布:php架构师书籍 编辑:程序博客网 时间:2024/05/16 17:52
题目←
阅读理解题
不良心出题人样例没给最后一层小于0的情况,wa了四次
#include<iostream>#include<cstdio>#include<algorithm>#include<queue>using namespace std;const long long MAXN = 1000 + 50;long long U[MAXN],C[MAXN],n,m;long long head[MAXN],next[MAXN << 1],tot;struct edge{ long long f,t,v;}l[MAXN << 1];void init(long long n){ for(long long i = 1;i <= n;i ++) head[i] = -1;}void build(long long f,long long t,long long v){ l[++ tot] = (edge){f,t,v}; next[tot] = head[f]; head[f] = tot;}long long a,b,c;long long ru[MAXN];bool S[MAXN];queue <long long> q;long long deep[MAXN],maxd;struct zt{ long long num,v;}A[MAXN];long long cnt;bool cmp(zt a,zt b){ return a.num < b.num;}bool flag;int main(){ scanf("%lld%lld",&n,&m); init(n); for(long long i = 1;i <= n;i ++) scanf("%lld%lld",&C[i],&U[i]); for(long long i = 1;i <= m;i ++) { scanf("%lld%lld%lld",&a,&b,&c); build(a,b,c); ru[b] ++; } for(long long i = 1;i <= n;i ++) { if(!ru[i])q.push(i),S[i] = true; } while(!q.empty()) { long long u = q.front(); q.pop(); if(!S[u])C[u] -= U[u]; //printf("u=%lld,C=%lld\n",u,C[u]); for(long long i = head[u];i != -1;i = next[i]) { long long t = l[i].t; if(C[u] > 0)C[t] += C[u] * l[i].v; ru[t] --; if(!ru[t]) { q.push(t); deep[t] = deep[u] + 1; maxd = max(maxd,deep[t]); } } } for(long long i = 1;i <= n;i ++) { if(deep[i] == maxd && C[i] > 0) { A[++ cnt].num = i; A[cnt].v = C[i]; flag = true; } } if(!flag) { printf("NULL"); return 0; } sort(A + 1,A + cnt + 1,cmp); for(long long i = 1;i <= cnt;i ++) { printf("%lld %lld\n",A[i].num,A[i].v); } return 0;}
阅读全文
0 0
- [codevs1088]神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 神经网络
- 串口通讯摘要(转)
- 字符串旋转
- 二分查找算法(左闭右开区间)
- python--leetcode693. Binary Number with Alternating Bits
- 全选,全不选,反选 案例
- [codevs1088]神经网络
- 自动轮播activity
- 串口通信帧的同步方法(识别一帧数据的起始结束)
- B/S与C/S究竟是何物
- 百度地图二次开发
- 城市天气和现在时间
- MySQL命令行中文编码完美解决方案
- POJ-2524 Ubiquitous Religions【并查集】
- git 分之管理---创建与合并分支