请各位大佬帮我看一看我这题哪里做的不对
#include<bits/stdc++.h>
using namespace std;
struct node{
int a,b,c;
};
bool cmp(node a,node b){
return a.a>b.a;
}
node d[1000001];
int main(){
int t,m;
cin>>t>>m;
for(int i=1;i<=m;i++){
cin>>d[i].a>>d[i].b;
d[i].c=d[i].b/d[i].a;
}
sort(d+1,d+m+1,cmp);
int sum=0,timed=0;
for(int i=1;i<=m;i++){
if(timed<=t){
sum+=d[i].a;
timed+=d[i].b;
}
else{
sum+=t*d[i].a;
break;
}
}
cout<<sum;
return 0;
}