题目链接:https://codeforces.com/contest/1537/problem/B
题目大意:
有一个n行,m列的格子图,初始的时候人格子
的位置,人每次可以往上下左右四个方向移动一格。需要选择两个目标点
,
,人需要从起点走到其中一个目标点,再走到另外一个目标点,最后再回到起点。要求人移动的距离最大,输出选择的两个目标点的坐标,两个目标点可以重合。
题解:
用公式表示出人移动的距离:abs(x)表示求x的绝对值
我们可以观察到x和y两者之间是独立的,所以我们分别求出下面两个公式的最大值
显然,时,第一个公式的值为
,这时上一个公式的值为最大的
同理,时,第二个公式的值为
,这时后一个公式的值达到最大值
代码:
#include<bits/stdc++.h>
using namespace std;
const int nn =5100;
const int inff = 0x3fffffff;
const double eps = 1e-8;
typedef long long LL;
const double pi = acos(-1.0);
const LL mod = 100000007;
int main()
{
int t;
cin>>t;
while(t--)
{
int n,m,i,j;
cin>>n>>m>>i>>j;
cout<<1<<" "<<1<<" "<<n<<" "<<m<<endl;
}
return 0;
}