洛谷 1346 电车
题目大意
一个有向图,求第A个点到第b个点的最小的长度。
思路
数据很弱,直接floyed就可以过了,注意预处理。
代码
#include<cstdio>
#define INF 2147483648
#define r(i,a,b) for (int i=a;i<=b;i++)
using namespace std;int n,c,d,k;
int l[101][101],e;
int min(int x,int y){return x<y?x:y;}
int max(int x,int y){return x>y?x:y;}
void read(int &f)
{f=0;char c;bool d=0;while (c=getchar(),c<'0'||c>'9') if (c=='-') d=1;f=f*10+c-48;while (c=getchar(),c>='0'&&c<='9') f=f*10+c-48;if (d) f*=-1;
}
void write(int x)
{if (x<0) {putchar('-');x=-x;}if (!x) {putchar(48);return;}if (!(x/10)){putchar(x%10+48);return;}write(x/10);putchar(x%10+48);
}
void LRZ()
{read(n);read(c);read(d);r(i,0,100)r(j,0,100) l[i][j]=l[j][i]=INF/4;r(i,1,n){read(k);r(j,1,k) {read(e);if (j==1) l[i][e]=false;else l[i][e]=1;}//输入}
}void print();
void work()
{r(k,1,n)r(i,1,n)r(j,1,n)if (i!=j&&j!=k&&k!=i)l[i][j]=min(l[i][j],l[i][k]+l[k][j]);//floyedprint();
}
void print()
{if (l[c][d]==INF/4) write(-1);else write(l[c][d]);
}
int main()
{LRZ();work();
}
洛谷 1346 电车相关推荐
- 洛谷1346 电车
题目描述 在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能).在每个路口,都有一个开关决定 ...
- 洛谷-1346 电车
题目描述 在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能).在每个路口,都有一个开关决定 ...
- 洛谷 P1346 电车 dijkstra
题目链接:https://www.luogu.org/problemnew/show/P1346 思路: 这是一道隐藏的最短路问题 把每一个车站看成一个点,将这个车站相连的第一个车站建立一条权为0的边 ...
- 洛谷P1346 电车
P1346 电车 题目描述 在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能).在每个路口 ...
- 洛谷P1346 电车(双端队列BFS)
[题目描述] 在一个神奇的小镇上有着一个特别的电车网络,它由一些路口和轨道组成,每个路口都连接着若干个轨道,每个轨道都通向一个路口(不排除有的观光轨道转一圈后返回路口的可能).在每个路口,都有一个开关 ...
- 洛谷 P1346 电车
最重要的事情是读题! 切换开关的状态后,它会自动复原我也不知道这是什么鬼开关 把每个节点看作是点,轨道看作是边.转换一次开关状态看作边权为1.由于题中n的范围是100,所以可以用最暴力好写的Floyd ...
- 洛谷or牛客数据结构+算法
栈思想:先进后出 tips:栈里能放下标就放下标 (牛客)小c的计事本(直接用stack可以简化代码,且不会被自己绕晕,当时没意识到) (牛客)吐泡泡(没意识到用栈),(牛客)好串 1.后缀表达式(栈 ...
- 洛谷-题解 P2672 【推销员】
独门思路!链表加优先队列! 这题一望,贪心是跑不掉了,但是我贪心并不好,所以想到了一个复杂一些但思路更保稳的做法 思路: 1 因为是离线操作,所以我们可以倒着求,先求x=n的情况,因为那样直接就知道了 ...
- 洛谷 P1142 轰炸
洛谷 P1142 轰炸 题目描述 "我该怎么办?"飞行员klux向你求助. 事实上,klux面对的是一个很简单的问题,但是他实在太菜了. klux要想轰炸某个区域内的一些地方,它们 ...
最新文章
- 英语计算机作文初中.,初中英语作文:电脑游戏
- 进阶必备:素数筛法(欧拉,埃氏筛法)
- 微服务架构中的雪崩问题产生原因及解决办法
- leetcode1103. 分糖果 II 该模拟就模拟,别老想着优化
- python用户登录_python用户登录系统
- 注解Annotation的IoC:从@Autowired到@Component
- C/C++ 去掉字符串首位的空格字符
- 【廖雪峰官方网站/Java教程】设计模式(二)
- Allegro画焊盘
- graphviz安装及使用
- python长沙_python 长沙
- SIGKDD2021 | 淘宝搜索向量化召回实践
- 台积电多人离职:老婆受不了
- ios 博客及论坛整理
- test1asfd 按时收费的水电费阿萨德阿斯蒂芬啊
- OpenMV自学笔记
- TensorFlow及深度学习相关资料积累汇总【不定期更新】
- 人工智能行业,就业方向和研究领域的简单介绍
- mysql中limit用法_MYSQL中LIMIT用法?
- 如何进行TDD信号分析?