10分祭
查看原帖
10分祭
922781
Dpf20120621楼主2024/1/6 13:54
#include<bits/stdc++.h>
using namespace std;
int n,m;
struct node{
	int price;
	int weight;
	double num_price;
}a[1001];
bool cmp(node x,node y){return x.num_price>y.num_price;}
int main(){
    int n,m,sum=0;
    cin>>n>>m;
    for(int i=0;i<m;i++){
    	cin>>a[i].weight>>a[i].price;
    	a[i].num_price=1.0*a[i].price/a[i].weight;
	}
	sort(a,a+m,cmp);
	for(int i=0;n>0&&i<m;i++){
		if(n>=a[i].weight){
			sum+=a[i].price;
			n-=a[i].weight;
		}
	}
	cout<<sum;
	return 0;
}

#2对了,其他都错了

2024/1/6 13:54
加载中...