Language: C++

#include <string>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<long long,long long> P;
typedef pair<long long,P> P1;
typedef pair<P,P> P2;
#define pu push
#define pb push_back
#define mp make_pair
#define eps 1e-7
#define INF 1000000000
#define mod 1000000007
#define fi first
#define sc second
#define rep(i,x) for(long long i=0;i<x;i++)
#define repn(i,x) for(long long i=1;i<=x;i++)
#define SORT(x) sort(x.begin(),x.end())
#define ERASE(x) x.erase(unique(x.begin(),x.end()),x.end())
#define POSL(x,v) (lower_bound(x.begin(),x.end(),v)-x.begin())
#define POSU(x,v) (upper_bound(x.begin(),x.end(),v)-x.begin())
long long n,h[100005];
ll dp[100005];
#define ALL(v)  (v).begin(),(v).end()
std::set<long long> st;
//#define MAX(a,b) if(a>b)
#define MAX(a,b) (((a)>(b))?(a):(b))
#define MIN(a,b) (((a)<(b))?(a):(b))

stack<long long> sta;   
queue<long long> que;


int main(){
	
	long long A,B,C,D,E,F,G,H,I,J,L,N,M,K,O,P,Q,R,S,T,U,V,W,X,Y,Z;
	long long ans;
	ans=0;
	string s;
	long long sum,sum1,sum2,sum3,sum4;
	sum=0;
	sum1=0;
	sum2=0;
	sum3=0;
	sum4=0;
	long long flg,flg1,cnt,cnt1;
	flg=0;
	flg1=0;
	cnt=0;
	cnt1=0;
	long long max;
	long long max1;
	max=0;
	max1=0;
	long long min;
	long long min1;
	min=INF;
	min1=INF;

	long long work,work1,work2,work3,work4;
	work=0;
	work1=0;
	work2=0;
	work3=0;
	work4=0;
    
	long long a[4];
	long long value;
	value=0;

    
	std::cin >> N;
	//std::cin >> N >> M;
	//std::cin >> N >> M >> K;
    
	//std::vector<long long> v(N);
	//std::vector<long long> w(N);
	//std::cin >> s;
    
    
	// 配列入力1
	/*
	for(long long i=0; i<N; i++){
		std::cin >> v[i];
	}
	//std::sort(v.begin(),v.end());//昇順ソート
	//std::sort(v.begin(),v.end(),std::greater<long long>());//降順ソート

	*/
	
	// 配列入力2
	/*
	for(long long i=0; i<N; i++){
		std::cin >> w[i];
	}
	*/
    
	
	//通常
	/*
	for(long long i=0; i<N; i++){
		
	}
	*/

	//std::sort(w.begin(),w.end());//昇順ソート
	//std::sort(w.begin(),w.end(),std::greater<long long>());//降順ソート
	

	//文字列入力
	/*
	for(long long i=0; i<s.length(); i++){
		
		if(s[i]!='1'){
	}
	*/
	
    
	//S.substr(i, 5);
	//S.size();

	//  ペア関連
	vector<pair<long long, long long> > pairs(N+1);
	for(long long i=1; i<=N; i++){
		long long a, b;
		cin >> a >> b;
		pairs[i] = make_pair(b, a);
	}
    
	//sort(pairs.begin(), pairs.end(),greater<pair<long long,long long> >());
	sort(pairs.begin(), pairs.end());
	
	//通常（ペア用）
	long long j;
	j=1;
	long long i;
	i=1;
	
	while(i<=pairs[N].first){
		if(j==N+1){
			puts("Yes");
			
			return 0;
		}
		pairs[j].second--;
		
		if(pairs[j].second<=0){
			j++;
		}
		i++;
	}

	//  set関連
	/*
	for(long long i=0; i<N; i++){
		std::cin >> v[i];
		if(st.find(v[i])==st.end()){
			st.insert(v[i]);
		}
		else{
			st.erase(v[i]);
		}
	}
	*/


	//	各桁の取り出し 関連
	/*	
	a[0] = (value % 10); 
	value /= 10;// 1桁目を取り出す
	a[1] = (value % 10); 
	value /= 10;// 2桁目を取り出す
	a[2] = (value % 10); 
	value /= 10;// 3桁目を取り出す
	a[3] = (value % 10); 
	value /= 10;// 4桁目を取り出す
	work1=a[0]+10*a[1];
	work2=a[2]+10*a[3];
	*/
	
	
	if(1){
    	//printf("%lld",N);
    	//printf("%lld",N);
    	puts("No");
    	//printf("%d",st.size());
    	//文字列の出力
    	//std::cout << s << std::endl;
    	//printf("%.12f\n",ret);
    	//cout << sum << endl;
	}
	else{
		//puts("No");
	}
	return 0;
}
#include <string>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<long long,long long> P;
typedef pair<long long,P> P1;
typedef pair<P,P> P2;
#define pu push
#define pb push_back
#define mp make_pair
#define eps 1e-7
#define INF 1000000000
#define mod 1000000007
#define fi first
#define sc second
#define rep(i,x) for(long long i=0;i<x;i++)
#define repn(i,x) for(long long i=1;i<=x;i++)
#define SORT(x) sort(x.begin(),x.end())
#define ERASE(x) x.erase(unique(x.begin(),x.end()),x.end())
#define POSL(x,v) (lower_bound(x.begin(),x.end(),v)-x.begin())
#define POSU(x,v) (upper_bound(x.begin(),x.end(),v)-x.begin())
long long n,h[100005];
ll dp[100005];
#define ALL(v)  (v).begin(),(v).end()
std::set<long long> st;
//#define MAX(a,b) if(a>b)
#define MAX(a,b) (((a)>(b))?(a):(b))
#define MIN(a,b) (((a)<(b))?(a):(b))

stack<long long> sta;   
queue<long long> que;


int main(){
	
	long long A,B,C,D,E,F,G,H,I,J,L,N,M,K,O,P,Q,R,S,T,U,V,W,X,Y,Z;
	long long ans;
	ans=0;
	string s;
	long long sum,sum1,sum2,sum3,sum4;
	sum=0;
	sum1=0;
	sum2=0;
	sum3=0;
	sum4=0;
	long long flg,flg1,cnt,cnt1;
	flg=0;
	flg1=0;
	cnt=0;
	cnt1=0;
	long long max;
	long long max1;
	max=0;
	max1=0;
	long long min;
	long long min1;
	min=INF;
	min1=INF;

	long long work,work1,work2,work3,work4;
	work=0;
	work1=0;
	work2=0;
	work3=0;
	work4=0;
    
	long long a[4];
	long long value;
	value=0;

    
	std::cin >> N;
	//std::cin >> N >> M;
	//std::cin >> N >> M >> K;
    
	//std::vector<long long> v(N);
	//std::vector<long long> w(N);
	//std::cin >> s;
    
    
	// 配列入力1
	/*
	for(long long i=0; i<N; i++){
		std::cin >> v[i];
	}
	//std::sort(v.begin(),v.end());//昇順ソート
	//std::sort(v.begin(),v.end(),std::greater<long long>());//降順ソート

	*/
	
	// 配列入力2
	/*
	for(long long i=0; i<N; i++){
		std::cin >> w[i];
	}
	*/
    
	
	//通常
	/*
	for(long long i=0; i<N; i++){
		
	}
	*/

	//std::sort(w.begin(),w.end());//昇順ソート
	//std::sort(w.begin(),w.end(),std::greater<long long>());//降順ソート
	

	//文字列入力
	/*
	for(long long i=0; i<s.length(); i++){
		
		if(s[i]!='1'){
	}
	*/
	
    
	//S.substr(i, 5);
	//S.size();

	//  ペア関連
	vector<pair<long long, long long> > pairs(N+1);
	for(long long i=1; i<=N; i++){
		long long a, b;
		cin >> a >> b;
		pairs[i] = make_pair(b, a);
	}
    
	//sort(pairs.begin(), pairs.end(),greater<pair<long long,long long> >());
	sort(pairs.begin(), pairs.end());
	
	//通常（ペア用）
	long long j;
	j=1;
	long long i;
	i=1;
	
	while(i<=pairs[N].first){
		if(j==N+1){
			puts("Yes");
			
			return 0;
		}
		pairs[j].second--;
		
		if(pairs[j].second<=0){
			j++;
		}
		i++;
	}

	//  set関連
	/*
	for(long long i=0; i<N; i++){
		std::cin >> v[i];
		if(st.find(v[i])==st.end()){
			st.insert(v[i]);
		}
		else{
			st.erase(v[i]);
		}
	}
	*/


	//	各桁の取り出し 関連
	/*	
	a[0] = (value % 10); 
	value /= 10;// 1桁目を取り出す
	a[1] = (value % 10); 
	value /= 10;// 2桁目を取り出す
	a[2] = (value % 10); 
	value /= 10;// 3桁目を取り出す
	a[3] = (value % 10); 
	value /= 10;// 4桁目を取り出す
	work1=a[0]+10*a[1];
	work2=a[2]+10*a[3];
	*/
	
	
	if(1){
    	//printf("%lld",N);
    	//printf("%lld",N);
    	puts("No");
    	//printf("%d",st.size());
    	//文字列の出力
    	//std::cout << s << std::endl;
    	//printf("%.12f\n",ret);
    	//cout << sum << endl;
	}
	else{
		//puts("No");
	}
	return 0;
}


Compiler output:
a.cc:218:11: error: redefinition of 'long long int n'
  218 | long long n,h[100005];
      |           ^
a.cc:22:11: note: 'long long int n' previously declared here
   22 | long long n,h[100005];
      |           ^
a.cc:218:13: error: redefinition of 'long long int h [100005]'
  218 | long long n,h[100005];
      |             ^
a.cc:22:13: note: 'long long int h [100005]' previously declared here
   22 | long long n,h[100005];
      |             ^
a.cc:219:4: error: redefinition of 'll dp [100005]'
  219 | ll dp[100005];
      |    ^~
a.cc:23:4: note: 'll dp [100005]' previously declared here
   23 | ll dp[100005];
      |    ^~
a.cc:221:21: error: redefinition of 'std::set<long long int> st'
  221 | std::set<long long> st;
      |                     ^~
a.cc:25:21: note: 'std::set<long long int> st' previously declared here
   25 | std::set<long long> st;
      |                     ^~
a.cc:226:18: error: redefinition of 'std::stack<long long int> sta'
  226 | stack<long long> sta;
      |                  ^~~
a.cc:30:18: note: 'std::stack<long long int> sta' previously declared here
   30 | stack<long long> sta;
      |                  ^~~
a.cc:227:18: error: redefinition of 'std::queue<long long int> que'
  227 | queue<long long> que;
      |                  ^~~
a.cc:31:18: note: 'std::queue<long long int> que' previously declared here
   31 | queue<long long> que;
      |                  ^~~
a.cc:230:5: error: redefinition of 'int main()'
  230 | int main(){
      |     ^~~~
a.cc:34:5: note: 'int main()' previously defined here
   34 | int main(){
      |     ^~~~