Dijisktra
小王子y
互关啊!!
展开
-
PAT甲级真题1087 条条大路通罗马
从我们的城市到达罗马有许多不同的旅游路线。请你在成本最低的旅游路线之中,找到使得游客幸福感最强的路线。输入格式第一行包含两个整数 NN 和 KK,分别表示总城市数量,城市之间道路数量,还包含一个城市名字,表示初始城市。接下来 N−1N−1 行,每行包含一个城市名和一个整数,表示到达该城市(初始城市除外)可以获得的幸福感。接下来 KK 行,每行包含一个道路的信息,格式为 City1 City2 Cost,表示两个城市之间的道路行走的花费,道路是双向的。城市都是由三个大写字母构成的字符串。我们的目原创 2020-12-20 00:05:44 · 364 阅读 · 1 评论 -
PAT甲级真题1072 加油站
加油站的建造位置必须使加油站与距离它最近的房屋的距离尽可能远。与此同时,它还必须保证所有房屋都在其服务范围内。现在,给出了城市地图和加油站的几个候选位置,请你提供最佳建议。如果有多个解决方案,请输出选取位置与所有房屋的平均距离最小的解决方案。如果这样的解决方案仍然不是唯一的,请输出选取位置编号最小的解决方案。输入格式第一行包含四个整数 NN,房屋总数,MM,加油站的候选位置总数,KK,连接房屋或加油站的道路总数,DsDs 加油站的最大服务范围。所有房屋的编号从 11 到 NN,所有加油站侯选位原创 2020-11-09 18:27:56 · 251 阅读 · 0 评论 -
Dijkstra求最短路(最短模板)
给定一个n个点m条边的有向图,图中可能存在重边和自环,所有边权均为正值。请你求出1号点到n号点的最短距离,如果无法从1号点走到n号点,则输出-1。输入格式第一行包含整数n和m。接下来m行每行包含三个整数x,y,z,表示存在一条从点x到点y的有向边,边长为z。输出格式输出一个整数,表示1号点到n号点的最短距离。如果路径不存在,则输出-1。数据范围1≤n≤5001≤n≤500,1≤m≤1051≤m≤105,图中涉及边长均不超过10000。输入样例:3 31 2 22 3 11 3原创 2020-11-02 13:48:39 · 208 阅读 · 0 评论 -
最小花费(三种方式)
在 nn 个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问 AA 最少需要多少钱使得转账后 BB 收到 100 元。输入格式第一行输入两个正整数 n,mn,m,分别表示总人数和可以互相转账的人的对数。以下 mm 行每行输入三个正整数 x,y,zx,y,z,表示标号为 xx 的人和标号为 yy 的人之间互相转账需要扣除 z%z% 的手续费 ( z<100z<100 )。最后一行输入两个正整数 A,B原创 2020-11-01 17:30:41 · 1185 阅读 · 0 评论