90荤,不知道还有10分去哪了,未解之谜

#include <iostream>
#include <cmath>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <queue>
using namespace std;
#define INF 0xfffffff
#define maxn 1002
long long  dist[maxn],sum[maxn];struct Edge{int e,w,t;
};
struct Node
{int e;int w;friend bool operator < (Node A, Node B){return  A.w > B.w;}
};bool vis[maxn];int m, n;
vector< vector<Edge> > G;long long  Dij(int Star,int End)
{Node P, Pn;P.e = Star;P.w = 0;sum[0]=sum[1]=0;priority_queue<Node> Q;dist[0]=dist[1]=0;int i;for(i=2;i<=n;i++)dist[i]=INF;Q.push(P);while( !Q.empty() ){P = Q.top();Q.pop();if( vis[P.e] )continue;vis[P.e] = true;if( P.e == End )return P.w;int len = G[P.e].size();for(int i=0; i< len; i++){long long cost;if(G[P.e][i].t){long long temp=sum[P.e]+G[P.e][i].w;cost=dist[P.e]-sum[P.e]*sum[P.e]+temp*temp;}else {sum[G[P.e][i].e]=0;cost=dist[P.e]+G[P.e][i].w;}if(cost<dist[G[P.e][i].e]) {dist[G[P.e][i].e]=cost;if(G[P.e][i].t) sum[G[P.e][i].e]=sum[P.e]+G[P.e][i].w;}Pn.e = G[P.e][i].e;Pn.w = dist[Pn.e];if( !vis[Pn.e] )Q.push(Pn);}}return -1;
}int main()
{Edge P;cin >> n >> m;G.clear();G.resize(n+1);memset(vis,false,sizeof(vis));for(int i=0; i<m; i++){int a, b, c,k;cin >> k>>a >> b >> c;P.e = b;P.w = c;P.t=k;G[a].push_back(P);P.e = a;G[b].push_back(P);}long long  ans = Dij(1,n);cout << ans << endl;return 0;
}

ccf 行车路线 201712-4相关推荐

  1. CCF 行车路线 100分

    试题编号: 201712-4 试题名称: 行车路线 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和 ...

  2. CCF认证 201712-4 行车路线(100分)

    CCF认证 201712-4 行车路线 思路:好难啊,去学习大佬的解法了,结果吭吭哧哧的还出现很多不bug.首先用的是是spfa的算法.但是由于处理小路的时候用来floyd,所以这个时间复杂度也不小, ...

  3. CCF CSP 行车路线 java 201712_4

    CCF CSP 行车路线 java 201712_4 问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和小道.大道比较好走,每走1公里小明会增加1的疲劳度.小道不好 ...

  4. CCF:201712-4 行车路线

    试题编号: 201712-4 试题名称: 行车路线 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和 ...

  5. CSP第十二次认证 行车路线 拆点

    这道题的关键是如何解决连续小路的情况,因为题目保证答案不超过1e6,说明小路的连续长度不超过1000,给了我们提示,可以将点拆分为两个属性,一个是点的序号,另一个则是最后一段连续小路的长度,所以我们的 ...

  6. CCF201712-4 行车路线(最短路)

    试题编号: 201712-4 试题名称: 行车路线 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和 ...

  7. 如何在Apple Watch上获取行车路线

    Kevin Parrish 凯文·帕里什 Gone are the days of using paper maps to navigate unknown roads and cities. Now ...

  8. 数据结构实验6图的应用-行车路线问题

    需求分析 0.问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和小道.大道比较好走,每走1公里小明会增加1的疲劳度.小道不好走,如果连续走小道,小明的疲劳值会快速增 ...

  9. 行车路线(改)(图的应用)

    写在前面:仅为个人代码/总结,未必标准,仅供参考!如有错误,还望指出交流,共同进步! 行车路线 [问题描述] 小明和小芳出去乡村玩,小明负责开车,小芳来导航. 小芳将可能的道路分为大道和小道.大道比较 ...

最新文章

  1. delphi dbgrid 上下移动并获取选中值_如何在UE4移动端中实现HZB?
  2. Windows 10 技术预览
  3. openresty开发系列28--openresty中操作mysql
  4. python for loop循环程序语句_python-带for循环的格式化输出_for-loop_酷徒编程知识库...
  5. 巧妙解决element-ui下拉框选项过多的问题
  6. datatable怎么根据两列分组_谈谈怎么做服务隔离
  7. C语言中Uint8_t数据类型
  8. vue开发一个实用美观的轮播图组件
  9. Android Studio 生成apk 出现 :error_prone_annotations.jar (com.google.errorprone:error) 错误
  10. Java基础-四大特性理解(抽象、封装、继承、多态)
  11. teststand调用python模块_TestStand 界面重置【小技巧】
  12. CSDN 写作小技巧(3)——学会在 CSDN 中插入超链接
  13. 基于量子计算的md5密码哈希破解方法
  14. 3个传教士与3个野人,哥带你们过河去
  15. 快速确定dll 是x86还是x64
  16. 彻底删除卸载2345安全卫士及2345浏览器
  17. 联想微型计算机怎么恢复系统,联想一体机系统还原的方法 联想一体机如何还原系统...
  18. python setup.py build develop_python setup.py build develop编译出错
  19. Python文字转语音文字转拼音
  20. 尚硅谷Web前端Promise教程从入门到精通——笔记

热门文章

  1. ESD静电保护二极管的优点有哪些?
  2. 13 ,CSS 入门基础,行内排版内嵌式排版和外部排版样式
  3. 1.3 Codesys十六进制数字字符串与字节互转
  4. 拼多多店铺类型区别介绍
  5. windows系统通过CMD将文件copy到远程电脑
  6. Camouflaged Object Detection阅读笔记
  7. 关于制作赛车游戏的一些入门知识
  8. PYTHON代码:根据FileRecord和MAP的关系,拼接IBM V7000 精简卷碎片
  9. 黑客攻防技术宝典(五)
  10. PMP考纲解读 |【人】任务2—领导团队(三)