#include <stdio.h>
void check(int *a,int *b){
int temp;
temp=*a;
*a=*b;
*b=temp;
}
int main(){
int N,T;
while(scanf("%d %d",&N,&T)!=EOF){
int arr[N][2];
int a,b,c=0,d=0;
for(int i=0;i<N;i++){
scanf("%d %d",&a,&b);
arr[i][0]=a;
arr[i][1]=b;
}
while(T>0){
for(int i=0;i<N-1;i++){
if(arr[i][0]<arr[i+1][0]){
check(&arr[i][0],&arr[i+1][0]);
check(&arr[i][1],&arr[i+1][1]);
}
}
c+=arr[0][0];
arr[0][0]-=arr[0][1];
if(arr[0][0]<0){
arr[0][0]=0;
}
T--;
}
printf("%d\n",c);
}
}
for(int i=0;i<N-1;i++){
if(arr[i][0]<arr[i+1][0]){
check(&arr[i][0],&arr[i+1][0]);
check(&arr[i][1],&arr[i+1][1]);
}
}
無法確保arr[0][0]是最大的