这题,其实我们把每一个位置都跑一遍,把他和(左上角,左下角,右上角,右下角)取个最大的差值,然后存起来,然后排序下,就是答案了-------------------------------------属实不知道它涂漆什么用
代码如下
#include "bits/stdc++.h"
using namespace std;
int main(){
int t,n,m,yi,er,san,si,ans;
while (cin>>t){
vector<int>ve;
while (t--){
ve.clear();
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
yi=abs(i-1)+abs(j-1);
er=abs(i-1)+abs(j-m);
san=abs(i-n)+abs(j-1);
si=abs(i-n)+abs(j-m);
ans=max(yi, max(er, max(san,si)));
ve.push_back(ans);
}
}
sort(ve.begin(),ve.end());
for(int i=0;i<ve.size();i++){
if(i!=0)cout<<" ";
cout<<ve[i];
}cout<<endl;
}
}
return 0;
}