Dijkstra
2015-08-27 14:42
357 查看
RT
class woca { public: int x; int y; };//x下一个节点,y为权值 vector<woca> adj[10010]; int n,m,u,v,s; long long cost[10010],FZ[10010]; int dist[10010];bool CP[10010]; bool operator<(woca n,woca m) { if(n.y<m.y) return 0; else return 1; } bool Dijk(int x) { if(cost[u]>x) return false; woca p,e; int j; priority_queue<woca> q; for(j=1;j<=n;j++) dist[j]=1100000000; memset(CP,0,sizeof(CP)); dist[u]=0;e.x=u;e.y=0; q.push(e); while(!q.empty()) { p=q.top();q.pop(); if(CP[p.x]==0) { CP[p.x]=1; for(unsigned int i=0;i<adj[p.x].size();i++) { if(cost[adj[p.x][i].x]>x)continue; if(!CP[adj[p.x][i].x]&&dist[adj[p.x][i].x]>dist[p.x]+adj[p.x][i].y) { dist[adj[p.x][i].x]=dist[p.x]+adj[p.x][i].y; e.x=adj[p.x][i].x; e.y=dist[adj[p.x][i].x]; q.push(e); } } } } if(dist[v]<=s)return true; return false; }
相关文章推荐
- Java基础知识强化02:import static 和 import
- 用xshell5连接vmware10+centos6.7时报Could not connect to '192.168.54.100' (port 22): Connection failed的解法
- 《Servlet与JSP核心编程第二版》阅读记录006-读取表单数据
- fibonacci数列
- The Procedure of AD9250 Parameter Configuration(AD9250 参数配置 + xilinx K7)
- Python数据库ORM SQLAlchemy 0.7学习笔记(1) 概要
- secondary index
- 细说 jQuery - 事件传播
- [No000008]发工资不仅仅是让你写代码的
- -webkit-text-size-adjust: none;该如何处理
- 【转】linux下 postgres的一些操作总结
- CentOS安装运行NodeJS框架Express
- 怎样使用问题步骤记录器
- Spring mvc学习笔记
- 由freemarker毫秒级时间谈固定日期格式
- 用户的管理
- js 实时显示不同时区时间
- 笨笨VC调试串口程序
- 信息安全在企业信息化建设中的作用
- [LeetCode] Set Matrix Zeroes (!!!!时间空间复杂度)