当前位置: 首页 > news >正文

南宁月嫂网站建设邢台高端网站建设

南宁月嫂网站建设,邢台高端网站建设,最近高清中文在线国语字幕,广州新公司网站建设在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士#xff0c;他是部落的中坚力量有一天他醒来后发现自己居然到了联盟的主城暴风城在被众多联盟的士兵攻击后#xff0c;他决定逃回自己的家乡奥格瑞玛 题目背景【题目描述#xff1a;】 在艾泽拉斯#xff0c;有n个城市。编号为1… 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士他是部落的中坚力量有一天他醒来后发现自己居然到了联盟的主城暴风城在被众多联盟的士兵攻击后他决定逃回自己的家乡奥格瑞玛 题目背景 【题目描述】 在艾泽拉斯有n个城市。编号为1,2,3,...,n。 城市之间有m条双向的公路连接着两个城市从某个城市到另一个城市会遭到联盟的攻击进而损失一定的血量。 每次经过一个城市都会被收取一定的过路费包括起点和终点。路上并没有收费站。 假设1为暴风城n为奥格瑞玛而他的血量最多为b出发时他的血量是满的。 歪嘴哦不希望花很多钱他想知道在可以到达奥格瑞玛的情况下他所经过的所有城市中最多的一次收取的费用的最小值是多少。 【输入格式】 第一行3个正整数nmb。分别表示有n个城市m条公路歪嘴哦的血量为b。 接下来有n行每行1个正整数fi。表示经过城市i需要交费fi元。 再接下来有m行每行3个正整数aibici(1aibin)。表示城市ai和城市bi之间有一条公路如果从城市ai到城市bi或者从城市bi到城市ai会损失ci的血量。 【输出格式】 仅一个整数表示歪嘴哦交费最多的一次的最小值。 如果他无法到达奥格瑞玛输出AFK。 输入样例#1 4 4 8 8 5 6 10 2 1 2 2 4 1 1 3 4 3 4 3 输出样例#1 10 输入输出样例   【算法分析】 问题可以看作 给定一张图给定边权和点权给定一个最大边权 问从点1到点n的路径的总长度不大于最大边权时点权的最大值最小 假设一个最大值问题就变成了   求出一条经过的点的点权都不大于这个最大值的最短路径并且这条最短路的长度小于最大边权生命值为0就GG了   好像可以二分答案证一证它的单调性 当一个数num被选为最大值的时候如果存在一条“经过的点的点权都不大于这个最大值的最短路径并且这条最短路的长度小于最大边权” 则num可以选为最大值。 当num变小时可以经过的城市变少可选的点数变少受到的伤害便可能增多 使受到的伤害尽可能大但不能超过总生命值最大的点权值就会尽可能小   故num不一定是最优解所以从[l, mid]内寻找解   当num作为最大值过小时就要从[mid 1, r]中寻找解.   也就是说这道题将伤害视作边权二分点权最大值跑最短路松弛的条件多加了一个松弛的点的点权必须小于最大点权 每次跑完最短路后如果受到的伤害小于血量那么这个最大点权便是一个解.   【代码】 1 //通往奥格瑞玛的道路2 #includeiostream3 #includecstdio4 #includecstring5 using namespace std;6 7 const int MAXN 10000 1;8 const int MAXM 50000 1;9 const int INF 0x3f3f3f3f; 10 11 int n, m, blood; 12 int city[MAXN]; 13 14 int edge_num, head[MAXN]; 15 struct edge { 16 int len, to, next; 17 }h[MAXM * 2]; 18 19 inline void Add(int from, int to, int len) { 20 h[edge_num].next head[from]; 21 h[edge_num].to to, h[edge_num].len len; 22 head[from] edge_num; 23 } 24 25 inline int read() { 26 int x 0; char ch getchar(); 27 while(ch 0 || ch 9) ch getchar(); 28 while(ch 0 ch 9) 29 x (x 3) (x 1) ch - 48, ch getchar(); 30 return x; 31 } 32 33 int fro, rear; 34 int dis[MAXN], que[MAXN * 20]; 35 bool in_que[MAXN]; 36 void SPFA(int money) { 37 for(int i 0; i n; i) dis[i] INF; 38 memset(in_que, 0, sizeof(in_que)); 39 in_que[1] 1, dis[1] 0; 40 que[fro rear 1] 1; 41 while(fro rear) { 42 int x que[fro]; 43 in_que[x] 0; 44 for(int i head[x]; i; i h[i].next) { 45 int l h[i].len, y h[i].to; 46 if(dis[x] l dis[y] city[y] money) { 47 dis[y] dis[x] l; 48 if(!in_que[y]) in_que[y] 1, que[rear] y; 49 } 50 } 51 } 52 } 53 54 inline bool check(int money) { 55 SPFA(money); 56 return dis[n] blood; 57 } 58 int main() { 59 int l 0, r 0; 60 n read(), m read(), blood read(); 61 for(int i 1; i n; i) { 62 city[i] read(); 63 r max(r, city[i]); 64 } 65 l max(city[1], city[n]); 66 for(int i 1; i m; i) { 67 int a, b, c; 68 a read(), b read(), c read(); 69 if(a ! b) { 70 Add(a, b, c); 71 Add(b, a, c); 72 } 73 } 74 if(!check(r)) { puts(AFK); return 0; } 75 while(l r) { 76 int mid (l r) 1; 77 if(!check(mid)) l mid 1; 78 else r mid - 1; 79 } 80 printf(%d\n, l); 81 }  转载于:https://www.cnblogs.com/devilk-sjj/p/9042030.html
http://www.zqtcl.cn/news/103431/

相关文章:

  • 黄江网站建设外贸公司用的采购储运财务软件
  • 优化网站公司做网站建设
  • 门户网站的盈利模式网站建设中备案
  • 代码需求网站织梦怎么关闭网站
  • 浙江工信部网站备案查询东圃做网站
  • icp网站域名怎么填写官方网站建设银行年利息是多少钱
  • 沈阳做网站好的信息流优化师证书
  • 做招聘网站创业seo优化工作
  • 如何维护网站建设外卖网站建设价钱
  • 南宁保洁网站建设乌克兰服装网站建设
  • ppt链接网站怎么做的nas云存储做视频网站
  • 上海网站制作公司联系方式设计素材网站照片
  • 林州网站建设价格网络舆情是什么意思
  • 网站外链平台的建设方法平台类型(至少5个)?兰州道路建设情况网站
  • 网站建立健全举报工作机制设计电子商务网站主页
  • 广州市建设工程交易服务中心网站沈阳百度推广哪家好
  • 个人网站备案需要什么网站建立的重要性
  • wordpress用户名西安seo代理计费
  • 网站建设前准备工作手机上传视频网站开发
  • 海口网站建设是什么意思wordpress推广码
  • 杭州市住房和城乡建设厅网站海南网站建设设计
  • 网站建设平台一般多少钱wordpress 本地上传服务器
  • 怎么给网站命名男女做羞羞羞的网站
  • 北京响应式网站建设公司信息流推广方式
  • 一级a做爰片迅雷网站微分销系统定制开发
  • 山东网站建设工作室网页设计全部代码
  • 用c 做网站可以吗注册网站什么要求
  • 销售网站排名销售型网站模板
  • wordpress 汽车宁波seo整体优化
  • 网站建设公司在哪里宣传c2c旅游电子商务平台