#include <bits/stdc++.h>
using namespace std;
const int N=1e4+10;
long long a[N],b[N];
int n;
//
bool check2(int mid){
for(int i=1;i<=n;i++){
if((b[i]+1)mid<=a[i]) return false;
}
return true;
}
bool check1(int mid){
for(int i=1;i<=n;i++){
if(b[i]mid>a[i]) return false;
}
return true;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
long long l=1,r=1e9;
while(l<r){
long long mid=(l+r)/2;
if(check2(mid)) r=mid;
else l=mid+1;
}
cout<<l<<" ";
l=1,r=1e9;
while(l<r){
long long mid=(l+r+1)/2;
if(check1(mid)) l=mid;
else r=mid-1;
}
cout<<l<<endl;
return 0;
}
using namespace std;
const int N=1e4+10;
long long a[N],b[N];
int n;
//
bool check2(int mid){
for(int i=1;i<=n;i++){
if((b[i]+1)mid<=a[i]) return false;
}
return true;
}
bool check1(int mid){
for(int i=1;i<=n;i++){
if(b[i]mid>a[i]) return false;
}
return true;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
long long l=1,r=1e9;
while(l<r){
long long mid=(l+r)/2;
if(check2(mid)) r=mid;
else l=mid+1;
}
cout<<l<<" ";
l=1,r=1e9;
while(l<r){
long long mid=(l+r+1)/2;
if(check1(mid)) l=mid;
else r=mid-1;
}
cout<<l<<endl;
return 0;
}
0 回复
0 转发
0 喜欢
9 阅读



