文章
9
粉丝
101
获赞
0
访问
5.9k
#include<bits/stdc++.h>
using namespace std;
struct node{
double cnt;
double energy;
}p[10005];
int cmp(node a,node b){
return a.energy/a.cnt<b.energy/b.cnt;
}
int main()
{
int m,n;
while(~scanf("%d%d",&m,&n)){
if(m==-1&&n==-1)break;
for(int i=0;i<n;i++){
cin>>p[i].cnt>>p[i].energy;
}
sort(p,p+n,cmp);
double ans;
for(int i=0;i<n;i++){
if(m>=p[i].energy){
ans+=p[i].cnt;
m-=p[i].energy;
} else{
&nbs...
登录后发布评论
多组输入上一组计算影响到下一组答案了