Submission
Status:
PPP-PPPP--
Subtask/Task Score:
70/100
Score: 70
User: code
Problemset: สูงต่ำในตาราง
Language: cpp
Time: 0.002 second
Submitted On: 2026-10-10 21:17:26
#include <bits/stdc++.h>
using namespace std;
int main () {
int n,b;cin>>n>>b;
int arr[n][n]={0};
vector <int> m(n,1000001);
vector <int> mx(n,0);
int mn=1000001,mn2=1000001;
int mxx=0,mxx2=0;
int xmin=0,ymin=0,xmin2=0,ymin2=0,xmax=0,ymax=0,xmax2=0,ymax2=0;
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
int k;cin>>k;
arr[i][j]=k;
if (k>mxx){mxx2=mxx;mxx=k;xmax2=xmax;ymax2=ymax;xmax=i;ymax=j;}
else if (k>mxx2 && k<mxx){mxx2=k;xmax2=i;ymax2=j;}
if (k<mn){mn2=mn;mn=k;xmin2=xmin;ymin2=ymin;xmin=i;ymin=j;}
else if (k<mn2 && k>mn){mn2=k;xmin2=i;ymin2=j;}
if (k<m[i]){
m[i]=k;
}else if (k>mx[i]){
mx[i]=k;
}
}
}
//cout<<"mn="<<mn<<" mn2="<<mn2<<" xmin="<<xmin<<" ymin="<<ymin<<" xmin2="<<xmin2<<" ymin2="<<ymin2<<"\n";
//cout<<" mxx="<<mxx<<" mxx2="<<mxx2<<" xmax="<<xmax<<" ymax="<<ymax<<" xmax2="<<xmax2<<" ymax2="<<ymax2;
if (xmax==xmin){
cout<<max(mxx+b-mn2+b,mxx2+b-mn+b);
}else {
cout<<mxx+b-mn+b;
}
return 0;
}