csu1804
/*
csu 1804
因为define和const总出错,到现在也不明白为什么 不知道define 和 const 出来的 mod 有什么区别
*/
#include<iostream>
#include<cstdio>
#include<queue>
#include<cstring>
using namespace std;
const int mod = 1000000000+7;
long long ans[100000+10];
long long a[100000+10];
long long b[100000+10];
long long d[100000+10];//d[i]代表入度
vector<int>e[100000+10];
int main()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF)
{
for(int i=0;i<=n;i++)
{
e[i].clear(); }
queue<int>q;
memset(ans,0,sizeof(ans));
memset(d,0,sizeof(d));
for(int i=1;i<=n;i++)
{
scanf("%lld%lld",&a[i],&b[i]);
}
int u,v;
for(int i=0;i<m;i++)
{
scanf("%d%d",&u,&v);
e[v].push_back(u);
d[u]++;
}
for(int i=1;i<=n;i++)
{
if(d[i]==0)
q.push(i);
}
while(!q.empty())
{
int to=q.front();
q.pop();
for(int i=0;i<e[to].size();i++)
{
int from=e[to][i];
ans[from]=(ans[from]+(ans[to]+b[to])%mod)%mod;
if(--d[from]==0)
{
q.push(from);
}
}
}
long long sum=0;
for(int i=1;i<=n;i++)
{
sum=(sum+ans[i]*a[i]%mod)%mod;
}
printf("%lld\n",sum); }
return 0;
}
csu1804的更多相关文章
- 2016 湖南省省赛B题《有向无环图》
题目链接[https://vjudge.net/problem/CSU-1804] 题意: 给出一个有向无环图,然后让你算下面的结果,count(i,j)表示i->j之间的路径条数. 题解: 根 ...
随机推荐
- 图片转化成base64编码
var img = "imgurl";//imgurl 就是你的图片路径 function getBase64Image(img) { var canvas = document. ...
- springboot + schedule
参考文章:https://blog.csdn.net/sinianliushui/article/details/78841713 参考文章: https://blog.csdn.net/hao703 ...
- 讨论下茴香逗的茴字有几种写法,javascript字符串数组查找“indexOf"的替代方式。
- tensorflow 升级到1.9-rc0,生成静态图frozen graph.pb本地测试正常, 在其他版本(eg1.4版本)或者android下运行出错NodeDef mentions attr 'dilations' not in Op<name=Conv2D; signature=input:T, filter:T -> output:T; attr=T:type,allowed=[DT_
这时节点定义找不到NodeDef attr 'dilations' not in,说明执行版本的NodeDef不在节点定义上,两个不一致,分别是执行inference的代码和生成静态图节点不一致(当然 ...
- crontab,定时任务执行找不到库or shell可执行,crontab 定时任务下就不能执行,tensorflow,ImportError: libcuda.so.1: cannot open shared object file: No such file or directory
在线上启动一个定时任务,但是起来查看,发现任务执行找不到库,报cuda错误: ImportError: libcuda.so.1: cannot open shared object file: No ...
- js解决下拉列表框互斥选项的问题
如图不区分选项与其他选项是互斥的关系,当选择了不区分时,其他选项就要去除,当有其他选项存在时,就不能有不区分 解决办法:定义change事件,若列表发生改变,首先判断点击的是否是不区分,若是,则将其他 ...
- Visual Studio Enterprise 2019序列号
Visual Studio Enterprise 2019序列号:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio Professional 2019序列号:NY ...
- 微信小程序-遍历列表
#index.js data: { "messg":"helloworld1111", "items":[ {"name" ...
- Ganglia监控扩展实现机制
Ganglia监控扩展实现机制 默认安装完成的Ganglia仅向我们提供基础的系统监控信息,通过Ganglia插件可以实现两种扩展Ganglia监控功能的方法.1.添加带内(in-band)插件,主要 ...
- 【iOS】値の判断
NSString str; ){ //nilの判断 //nullの判断 //長さの判断 // ...... }