POJ--1797 Heavy Transportation (最短路)
题目电波: POJ--1797 Heavy Transportation
n点m条边, 求1到n最短边最大的路径的最短边长度
改进dijikstra,dist[i]数组保存源点到i点的最短边最大的路径的最短边长度
#include<iostream> #include<cstring> #include<algorithm> #include<stdio.h> using namespace std; #define maxn 100010 #define inf 0x3f3f3f3f struct ac{ int x,y; ac(){} ac(int a,int b){ x=a,y=b; } }a[maxn]; struct wa{ int to,va,nex; }eg[maxn]; int dis[maxn],head[maxn]; bool fa[maxn]; int n,m,tot,len; void init(){ memset(head,-,sizeof(head)); memset(eg,,sizeof(eg)); memset(fa,,sizeof(fa)); tot=,len=; } void add_eg(int u,int v,int va){ eg[tot].to=v; eg[tot].va=va; eg[tot].nex=head[u]; head[u]=tot++; eg[tot].to=u; eg[tot].va=va; eg[tot].nex=head[v]; head[v]=tot++; } bool xxx(ac q,ac w){ ; ; } void add(int v){ ) return ; ])){ swap(a[v],a[v/]); add(v/); } } void updata(int v){ >len) return ; ==len){ ],a[v])) swap(a[v],a[v*]); return ; } ])&&xxx(a[v],a[v*+])) return ; ],a[v*+])){ swap(a[v*],a[v]); updata(v*); }else{ swap(a[v*+],a[v]); updata(v*+); } } void dijstra(){ memset(dis,,sizeof(dis)); memset(fa,,sizeof(fa)); dis[]=inf; a[++len]=ac(inf,); while(len){ ac x=a[]; int u=x.y; swap(a[],a[len--]),updata(); if(fa[u]) continue; fa[u]=; ;j=eg[j].nex){ int v=eg[j].to; int va=eg[j].va; if(dis[v]<min(dis[u],va)){ dis[v]=min(dis[u],va); a[++len]=ac(dis[v],v); add(len); } } } } int main(){ ; cin>>t; while(t--){ cin>>n>>m; init(); ;j<m;j++){ int u,v,va; scanf("%d%d%d",&u,&v,&va); add_eg(u,v,va); } dijstra(); printf("Scenario #%d:\n%d\n\n",zz++,dis[n]); } }
POJ--1797 Heavy Transportation (最短路)的更多相关文章
- POJ 1797 Heavy Transportation (最短路)
Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 22440 Accepted: ...
- POJ 1797 Heavy Transportation 最短路变形(dijkstra算法)
题目:click here 题意: 有n个城市,m条道路,在每条道路上有一个承载量,现在要求从1到n城市最大承载量,而最大承载量就是从城市1到城市n所有通路上的最大承载量.分析: 其实这个求最大边可以 ...
- poj 1797 Heavy Transportation(最大生成树)
poj 1797 Heavy Transportation Description Background Hugo Heavy is happy. After the breakdown of the ...
- POJ 1797 Heavy Transportation / SCU 1819 Heavy Transportation (图论,最短路径)
POJ 1797 Heavy Transportation / SCU 1819 Heavy Transportation (图论,最短路径) Description Background Hugo ...
- POJ.1797 Heavy Transportation (Dijkstra变形)
POJ.1797 Heavy Transportation (Dijkstra变形) 题意分析 给出n个点,m条边的城市网络,其中 x y d 代表由x到y(或由y到x)的公路所能承受的最大重量为d, ...
- POJ 1797 Heavy Transportation
题目链接:http://poj.org/problem?id=1797 Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K T ...
- POJ 1797 Heavy Transportation SPFA变形
原题链接:http://poj.org/problem?id=1797 Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K T ...
- POJ 1797 ——Heavy Transportation——————【最短路、Dijkstra、最短边最大化】
Heavy Transportation Time Limit:3000MS Memory Limit:30000KB 64bit IO Format:%I64d & %I64 ...
- POJ 1797 Heavy Transportation(最大生成树/最短路变形)
传送门 Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 31882 Accept ...
- POJ 1797 Heavy Transportation (Dijkstra变形)
F - Heavy Transportation Time Limit:3000MS Memory Limit:30000KB 64bit IO Format:%I64d & ...
随机推荐
- React Native之获取通讯录信息并实现类通讯录列表(ios android)
React Native之获取通讯录信息并实现类通讯录列表(ios android) 一,需求分析 1,获取通讯录信息,筛选出通讯录里有多少好友在使用某个应用. 2,获取通讯录信息,实现类通讯录,可拨 ...
- PHP中对象的深拷贝与浅拷贝
先说一下深拷贝和浅拷贝通俗理解 深拷贝:赋值时值完全复制,完全的copy,对其中一个作出改变,不会影响另一个 浅拷贝:赋值时,引用赋值,相当于取了一个别名.对其中一个修改,会影响另一个 PHP中, = ...
- (自用 )npm --save和--save-dev区别
https://blog.csdn.net/playboyanta123/article/details/78349034(原文) 目前大多数基于vue的项目都是用vue-cli 创建的.当创建项目完 ...
- linux redis服务安装
redis下载 官网地址:https://redis.io/download 在Linux下安装Redis非常简单,具体步骤如下(官网有说明): 1.下载源码,解压缩后编译源码. $ wget htt ...
- ansible的playbook简单使用
一.介绍 playbook就是一个用yaml语法把多个模块堆起来的一个文件 核心组件: Hosts:执行的远程主机列表Tasks:任务,由模块定义的操作的列表:Varniables:内置变量或自定义变 ...
- Tembin
1:组织机构和用户之间是多对一的关系,一个组织结构可以有多个成员,一个成员只能属于一个组织机构. 2:app里面的邀请成员:是邀请发送短信通知用户注册tembin账户,当用户去注册的时候下面就会显示所 ...
- 01.javascript之数据类型
1.数据类型 JavaScript一共有六种数据类型.(ES6新增了第七种Symbol类型的值) 数值(Number) 字符串(String) 布尔值(boolean) undefined null ...
- Civil 3D 二次开发 创建Civil 3D 对象—— 01 —— 创建几何空间点
这一小节,我们创建派生于CivilCreateEntityDemo的类CivilCreateCogoPoint,来创建几何空间点. 1 创建类并添加字段及方法 首先在项目资源管理器中向本项目中添加类, ...
- jQuery 操作input select,checkbox
input $("#add_device_owner_id").val() $("#add_device_owner_id").val("d" ...
- thymeleaf手动映射根路径映射
到/src/java/resources/templates/index.html下 @RequestMapping("/") public String index(){ ret ...