这个70分
#include <iostream>
using namespace std;
struct ground{
int x;
int y;
};
int main(){
int n,m,k;
cin>>n>>m>>k; //表示待开垦的区域总数,顿顿手上的资源,每块区域的最少开垦天数
ground g[10000];
int x,y;
int max=0;
int maxi;
int flag[10000]={0};
for(int i=0;i<n;i++){
cin>>x>>y;
g[i].x=x;
g[i].y=y;
if(x>max){
max=x;
}
flag[x]=y+flag[x];
}
int p;
for(int i=max;i>0;i--){
//cout<<flag[i]<<" "; //这减少这一天要用的
if(i==k){
p=k;
break;
}
if(flag[i]<m){
m-=flag[i];
flag[i-1]+=flag[i];
p=i;
p--;
}
else
break;
}
cout<<p;
return 0;
}