80求调 第一个wa了
查看原帖
80求调 第一个wa了
1406501
lilinxuan711楼主2024/8/24 10:53
#include<bits/stdc++.h>
using namespace std;
struct gold{
	int mon,heav;
};
bool cmp(gold x,gold y){
	return x.mon*1.0/x.heav>y.mon*1.0/y.heav;
}
int main(){
	int n,t;
	cin>>n>>t;
	gold a[110];
	for(int i=1;i<=n;i++)cin>>a[i].heav>>a[i].mon;
	sort(a+1,a+n+1,cmp);
	int len=1;
	double sum=0;
	while(true){
		if(a[len].heav<t){
			sum+=a[len].mon;
			t-=a[len].heav;
			len++;
		}else{
			sum=sum+double(t*a[len].mon*1.0/a[len].heav);
			break;
		}
	}
	printf("%.2lf",sum);
	return 0;
}
2024/8/24 10:53
加载中...