每次只取单位时间内价值最大的药!
#include<bits/stdc++.h>
using namespace std;
int T,M;
pair<int,int> tmp;
vector<pair<int,int>> med;
bool cmp(pair<int,int> a, pair<int,int> b){
return a.second/a.first>b.second/b.first;
}
int main(){
cin>>T>>M;
for(int i=0;i<M;i++){
cin>>tmp.first>>tmp.second;
med.push_back(tmp);
}
sort(med.begin(),med.end(),cmp);
int res=0;
for(int i=0;i<M;i++){
if(T>0&&med[i].first<=T){
res+=med[i].second;
T-=med[i].first;
}
}
cout<<res<<endl;
return 0;
}