Submission
Status:
PPPPPPPPPP
Score: 100
User: Ecir
Problemset: กางเต็นท์
Language: cpp
Time: 0.201 second
Submitted On: 2025-04-09 12:23:10
#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
#define twod array<ll,2>
const int modd = 1e9 + 7;
const ll inf=1e18;
map<int,int> mp1mx;
map<int,int> mp1mn;
map<int,int> mp2mx;
map<int,int> mp2mn;
int main(){
ios::sync_with_stdio(0);cin.tie(0);
int n;cin >> n;
for(int i=1;i<=n;i++){
int u,v;cin >> u >> v;
if(mp1mx.count(u-v)==0) mp1mx[u-v]=u;
else mp1mx[u-v]=max(mp1mx[u-v],u);
if(mp2mx.count(u+v)==0) mp2mx[u+v]=u;
else mp2mx[u+v]=max(mp2mx[u+v],u);
if(mp1mn.count(u-v)==0) mp1mn[u-v]=u;
else mp1mn[u-v]=min(mp1mn[u-v],u);
if(mp2mn.count(u+v)==0) mp2mn[u+v]=u;
else mp2mn[u+v]=min(mp2mn[u+v],u);
}
int ans=0;
for(auto e:mp1mx){
int u=e.first;
ans=max(ans,mp1mx[u]-mp1mn[u]);
}
for(auto e:mp2mx){
int u=e.first;
ans=max(ans,mp2mx[u]-mp2mn[u]);
}
cout << ans;
return 0;
}