链接
[https://i.cnblogs.com/EditPosts.aspx?opt=1]
题意
二维平面从原点出发k步,要到达的点(x,y),每个位置可以往8个方位移动,问到达目的地最多可以走多少斜路
如果不可以到达输出-1;
分析
找规律,看代码自己琢磨
代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
ll q,x,y,k;
cin>>q;
while(q--){
cin>>x>>y>>k;
if(max(x,y)>k) {
cout<<-1<<endl;
continue;
}
if(x>y) swap(x,y);
if((y-x)&1) k--;
else if((k-y)&1) k-=2;
cout<<k<<endl;
}
return 0;
}
原文地址:https://www.cnblogs.com/mch5201314/p/9879710.html
时间: 2024-10-03 20:57:53