https://vjudge.net/problem/LightOJ-1074

首先吐槽一个单词,directional是有方向的,undirectional是无向的,这个unidirectional是tm单向的。。。。好吧我又学会一个单词。

由于有负边权,用spfa好啦,判断负环时不要遇见就return,还有其他的节点要更新呢,直接continue掉就好,这样只跑一次spfa根据记录的d直接输出答案。

 #include<bits/stdc++.h>
using namespace std;
#define inf 0x3f3f3f3f
struct Edge
{
int to,w,next;
}e[];
int cnt,first[],c[];
void add(int u,int v,int w)
{
e[cnt].to=v;
e[cnt].w=w;
e[cnt].next=first[u];
first[u]=cnt++;
}
int d[];
bool spfa(int N)
{
int inq[];
bool vis[];
queue<int>Q;
memset(vis,,sizeof(vis));
memset(inq,,sizeof(inq));
memset(d,inf,sizeof(d));
Q.push();
vis[]=inq[]=;
d[]=;
while(!Q.empty()){
int u=Q.front(); Q.pop();
vis[u]=;
for(int i=first[u];i+;i=e[i].next){
Edge x=e[i];
if(inq[x.to]>N) continue;
if(d[x.to]>d[u]+x.w){
d[x.to]=d[u]+x.w;
if(!vis[x.to]){
Q.push(x.to);
inq[x.to]++;
}
}
}
}
return ;
}
int main()
{
int T,N,M,Q,i,j,k=;
int u,v,w;
cin>>T;
while(T--){cnt=;
memset(first,-,sizeof(first));
cin>>N;
for(i=;i<=N;++i) cin>>c[i];
cin>>M;
while(M--){
cin>>u>>v;
add(u,v,(c[v]-c[u])*(c[v]-c[u])*(c[v]-c[u]));
}
cin>>Q;
printf("Case %d:\n",++k);
bool ok=spfa(N);
while(Q--){
cin>>u;
if(d[u]<||d[u]==inf) puts("?");
else cout<<d[u]<<endl;
}
}
return ;
}

最新文章

  1. 手机端布局rem 与vm的使用
  2. (转)django上传文件
  3. myeclipse自动import
  4. 安装LINUX X86-64的10201出现链接ins_ctx.mk错误-转自yingtingkun
  5. javaweb 中的乱码问题
  6. Java中解析XML的四种方法
  7. 解决VS2010打开Web页面时经常由于内存较低而导致VS2010自动关闭的问题
  8. [翻译]Orchard-修改首页布局
  9. sublime eslint setup
  10. 使用Template格式化Python字符串
  11. 痞子衡嵌入式:并行接口NAND标准(ONFI)及SLC Raw NAND简介
  12. eclise开发设置
  13. JQ方法实用案例///鼠标移动到div和修改ipt中弹窗、CSS鼠标变小手、JQ获取元素属性、JQ选择器
  14. mysqldump导出数据时,某些表不导出,排除某些表,不导出某些表
  15. phpstorm之ssh链接远程Linux服务器
  16. Linux下查看端口,强制kill进程
  17. const V.S readonly
  18. leetcode 移除元素
  19. golang中的检验hash
  20. tab键、快捷键、默认按钮、小数点输入的使用--四则运算

热门文章

  1. Vue中通过鼠标移入移出来添加或取消class样式(active)
  2. 【我的Android进阶之旅】如何在浏览器上使用Octotree插件树形地展示Github项目代码?
  3. python数据类型三(字典)
  4. git发布代码到github过程和常见错误
  5. R语言seq()函数用法
  6. pandas(三)汇总和计算描述统计
  7. MySQL Binlog解析(2)
  8. 002. MySQL复制操作
  9. Java:判断字符串中包含某字符的个数
  10. 自定义Checkbox和Radiobox