赶快跑

   这些不测总是要来到人间。是来到你面前,还是来到他面前,是碰到一次,还是常常碰到,这也许有一定的偶然性。与生俱来的还有生老病死,这是任何人都无法挣脱的宿命,上至王侯将相,下至贩夫走卒,都无法摆脱。无法摆脱的还有时间,从表面来看,时间对生命并不构成威胁,甚至我们还以为它是运载人生的免费列车,可是真正给我们致命一击的就是时间,时间每时每刻都在咬着我们的生命之藤。

王老师在去食堂的过程中,由于的太快,掉入到了时空裂缝中! 这个时空裂缝里面是一条长直的彩虹公路,公路上的每个地方都可以简单地用一个一维位置来表示(相当于数轴上的一个点),这条公路上存在着两个传送门,分别在 x 和 y 位置,王老师可以从 x 位置的传送门瞬间传送到 y 位置,而 y 位置的传送门可以瞬间传送到 x 位置。 现在王老师落入到了位置 a 上,他需要赶快到位置 b 来逃离这个时空裂缝,对于公路上的传送门,他可以选择使用或不使用。因为他实在是太饿了,要马上赶到食堂去吃饭!请帮助他求出他逃离时空裂缝过程中的总距离的最小值。 输入格式 输入仅包含一行,为四个用空格分隔的整数:a,b,x,y。 a 和 b,表示起始地点和结束地点,后面是 x 和 y,表示传送门的位置。 输出格式 输出一个整数,是王老师逃离时空裂缝所需要的最短距离。 样例输入 1 3 10 8 2 样例输出 1 3 提示/说明 样例提示 在这个样例中,最佳策略是先从位置 3 走到位置 2 ,距离为 1,从位置 2 可以瞬间传送到位置 8 ,再从位置 8 走到位置 10,距离为 2。 所以需要的总距离为 1+2=3。 数据范围 所有的位置都是范围为 0…100 的整数,某些位置有可能相同。 ``` #include <iostream> #include <math.h> using namespace std; long long a,b,x,y; int main() { cin>>a>>b>>x>>y; if(x>y)swap(x,y); if(a>b)swap(b,a); long long t=abs(a-x)+abs(b-y); long long g=y-x; cout<<min(g,t); //cout<<t<<" "<<g; return 0; }//DEBUG ```
12-12
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值