我顺便明白了。。。。英文题意理解其实好大一部分还是靠感觉,然后自己猜题意,试题意。

你要是纠结于英文你就跪了。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
using namespace std; typedef long long LL; const int maxn=50005;
const LL INF=6000000000;
bool vis[maxn*2];
int a[maxn*2],u[maxn*2],v[maxn*2],w[maxn*2],cost[maxn*2],first[maxn*2],next[maxn*2];
LL d[maxn];
int n,e;
queue<int> q; LL spfa()
{
LL ans=0;
memset(vis,0,sizeof(vis));
for(int i=1;i<=n;i++) d[i]=(i==1)?0:INF;
q.push(1);
while(!q.empty())
{
int x=q.front();q.pop();
vis[x]=false; //清除在队列中标志。
for(int e=first[x];e!=-1;e=next[e])
if(d[v[e]]>d[x]+w[e])
{
d[v[e]]=d[x]+w[e];
if(!vis[v[e]])
{
vis[v[e]]=true;
q.push(v[e]);
}
}
} for(int i=1;i<=n;i++)
{
if(d[i]==INF) return 0;
else ans+=a[i]*d[i];
}
return ans;
} int main()
{
int case_num;
scanf("%d",&case_num);
while(case_num--)
{
scanf("%d%d",&n,&e);
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
memset(first,-1,sizeof(first));
for(int i=1;i<=2*e;i+=2)
{
scanf("%d%d%d",&u[i],&v[i],&w[i]);
next[i]=first[u[i]];//还只能先处理next,后first
first[u[i]]=i; u[i+1]=v[i];//双向边
v[i+1]=u[i];
next[i+1]=first[u[i+1]];
first[u[i+1]]=i+1;
w[i+1]=w[i];
}
if(v==0) {printf("0\n");continue;}
if(e==0) {printf("0\n");continue;} LL ans=spfa();
if(ans==0)
printf("No Answer\n");
else
printf("%lld\n",ans);
}
return 0;
}

POJ3313 【随便写了个spfa就一A了,嗨皮】的更多相关文章

  1. Jquery 随便写些知识点

    针对jQuery随便写些觉得还挺实用的一些东西,也没系统的去理一番,只是想到哪写到哪,写的不完全也请多见谅. jQuery和其他javascript库产生$符号冲突了?$符号想必用jQuery的人都不 ...

  2. 随便写一点最近开发遇到的问题和解决方法 大部分关于laravel和php

    laravel里要想对对象进行自己设计的排序(usort()), 得用匿名方法,  原声php就不用 php里面可以随便写html代码,  比如可以把html直接后缀名改成.php, 然后在任何地方& ...

  3. Jquery网页加载进度条(随笔,当然要随便写,当日记动态心情写咯)

    首先先是吐槽时间... 告诉大家一个好消息,就是有个妹子非常仰慕我的前端技术说要包养我 然后有好多羡慕嫉妒恨的童鞋一定要说,少年你太天真了,那一定是HR 然后我表示她不是HR,本宅的春天貌似要到来了. ...

  4. 忙了好一阵,今天随便写篇关于canvas的小东西

    前几天在朋友圈发了几条3D demo视频,其中就有3D空间组成各种图形.如上! 那么这些图形的每个mesh的坐标可不是手动去写,如果你愿意我当然不拦着!所以今天这篇就来介绍如何获得这些图形的坐标数据. ...

  5. 实现一个最简单的VIM文本编辑器(可能有bug,随便写了一个)

    简单的写了一个文本编辑器,功能很简单,但足以把文件IO相关的操作熟悉了,可能功能或者分配的大小还不够完善.请参考参考: #include <stdio.h> #include <co ...

  6. H5取经之路——随便写点儿

    [相对定位] * 1.使用position:relative:设置元素为相对定位的元素: * 2.定位机制: ①相对于自己原来文档流中的的位置定位,当不指定top等定位值时,不会改变元素位置: ②相对 ...

  7. java用POI操作excel——随便写一下,最基础的东西

    前两天部门实施在做一个东西,需要把客户放在Excel中的数据导入到Oracle数据库中,我就想着直接写一个模板,必要的时候改一下实体类应该可以解放实施同事的双手,不过在实际写的过程中,还是碰到很多问题 ...

  8. 今天一天课,随便写点吧/xk

    知道的越多,不知道的也就越多. 最近想学很多很多东西,但是发现没有一个计划,也没有那么多时间精力,都是想到哪学到哪,有的就是学了一半就放下了,又去学新的,感觉需要规划一下学习路线,时间什么的 推荐一个 ...

  9. Vue.js的小例子--随便写的

    1.领导安排明天给同事们科普下vue 2.简单写了两个小例子 3.话不多说直接上代码 <!DOCTYPE html> <html> <head> <meta ...

随机推荐

  1. C# - Byte类型与String类型互转

    byte[] bs = Encoding.UTF8.GetBytes("你的字符串"); string str = Encoding.UTF8.GetString(bs);

  2. [poj 1904]King's Quest[Tarjan强连通分量]

    题意:(当时没看懂...) N个王子和N个女孩, 每个王子喜欢若干女孩. 给出每个王子喜欢的女孩编号, 再给出一种王子和女孩的完美匹配. 求每个王子分别可以和那些女孩结婚可以满足最终每个王子都能找到一 ...

  3. Swift - 经纬度位置坐标与真实地理位置相互转化

    通过CoreLocation类,得到的定位信息都是以经度和纬度等表示的地理信息,通过CLGeocoder类可以将其反编码成一个地址.反之,也可根据一个地址获取经纬度. 1,通过经纬度获取地址 1 2 ...

  4. W英语: 紧急, 非紧急

    take your time 慢慢来 It is not urgent. Take it easy please. 不急,慢慢来.

  5. MFC 窗口重绘问题

    在客户区画直线等图形时, 发现当其最小化或者其他窗口遮挡时,出现窗口重绘,而将原来绘制的图形删除,上网上搜索知道,绘制图形的代码必须放置在Ondraw函数中,才能避免重绘时图形消失(因为一直在响应WM ...

  6. HDU 3397 Sequence operation(线段树)

    HDU 3397 Sequence operation 题目链接 题意:给定一个01序列,有5种操作 0 a b [a.b]区间置为0 1 a b [a,b]区间置为1 2 a b [a,b]区间0变 ...

  7. Phalcon资源文件管理(Assets Management)

    资源文件管理(Assets Management)¶ Phalcon\Assets是一个让开发人员管理静态资源的组件,如管理css,javascript等. Phalcon\Assets\Manage ...

  8. 【Android】 -- 使用UncaughtExceptionHandler捕捉全局异常

    在综合统计SDK(欧盟统计局的朋友,百度统计)之后.有一个非常有利的功能测试:错误分析.此功能可以在程序的执行中遇到崩溃(runtimeException)反馈给server,帮助开发者提高产品.多功 ...

  9. 恭喜我开通了CSDN博客

    准备在这里写点东西,记录我的学习过程....

  10. AFNetwork学习(二)——GET/POST请求

    为了学习AFNetwork,自己搭建整理了一下AFNetwork向后台发送请求和后台返回json数据的整个处理过程.利用Struts2搭建了一个后台,提供Action并返回json数据 环境:Xcod ...