官方题解|时间旅行
2024-03-22 11:29:52
发布于:浙江
28阅读
0回复
0点赞
题目大意
问你恰好走 K 步 , 能否从 走到
题解思路
首先计算原点到目标点的距离 , 然后判断一下 是否大于 。 且 要整除于 , 因为多出来的步数是偶数就可以 走一步然后退一步 进行消耗步数 , 否则不能达到目标点。
参考代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main(){
int t;scanf("%d",&t);
while(t--){
int a,b,c,d,k;
scanf("%d%d%d%d%d",&a,&b,&c,&d,&k);
ll e = (ll)k - (ll)abs(a - c) - (ll)abs(b - d);//这里会爆int
if(e >= 0 && e % 2ll == 0 ){
puts("Yes");
}else{
puts("No");
}
}
return 0;
}
这里空空如也
有帮助,赞一个