#include <stdio.h> #include <stdlib.h> struct stu { int a; int b; }*sc; int cmp(void* a1,void* a2) { return (((struct stu*)a1)->b-((struct stu*)a2)->b); } int main() { int n, r,avg; int i=0; int j=0; while(scanf("%d%d%d",&n,&r,&avg)==3) { sc=malloc(n*8); int sum=n*avg; int min=0; long x=0; for(i=0;i<n;i++) { scanf("%d%d", &((sc + i)->a), &((sc + i)->b)); min=min+(sc + i)->a; } qsort(sc,n,sizeof(struct stu),cmp); if(min<sum) { for(i=0;i<n;i++) { for(j=(sc + i)->a;j<r;j++) { x=x+(sc + i)->b; min++; if(min==sum) goto end; } } } end: printf("%ld\n",x); } return 0; }