Luogu P4943 密室 题解
闲扯 这是紫题?? 做了昨天讲课听了一天的网络流,脑子都痛了,换点题做,结果随机调到这道题,发现貌似很好做的样子。。 Solution 首先我们分情况讨论一下。 罗恩去密室 \(1\) ,哈利去密室 \(2\) 。 罗恩去密室 \(2\) ,哈利去密室 \(1\) 。 罗恩吃瓜,哈利去两个密室。 对于罗恩可以走的路,哈利一定是可以走的,所以哈利到两个密室的时间一定不小于罗恩。所以罗恩选择去他能去的密室中较近的一个,剩下一个由哈利去。 为什么是对哒? 考虑罗恩去较远的一个,那么哈利到较近的一个密室所用的时间是不大于罗恩所用时间的,所以答案为罗恩到较远密室所用的时间。 考虑罗恩去较近的一个,那么哈利到较远的一个密室所用的时间是不大于罗恩所用时间的,所以答案不大于罗恩到较远密室所用的时间。 综上,对于前两种情况,可以由以上策略解决。 对于第 \(3\) 种情况,我们记录一下哈利到两间密室用时最短为多少,再找出两间密室间的最小距离,两者累加即为答案。 最后输出再取一个最小值即可。 \(ps:\) 对于前两种情况,答案应取用两人用时的最大值。 Code #include<bits/stdc++.h> #define del(a,i) memset(a,i,sizeof(a)) #define ll long long #define inl inline #define il inl