帮忙please(DEV上过了)
查看原帖
帮忙please(DEV上过了)
808654
FIGFUH001楼主2023/7/3 13:13
#include<bits/stdc++.h>
using namespace std;

struct v{
   int p,m;
}a[105];
int T,n;
double ans;
bool cmp(v x,v y){
    return x.p*y.m>y.p*x.m;
}
int main(){
	cin>>n>>T;
	for(int i=1;i<=n;i++)
		cin>>a[i].m>>a[i].p;
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n;i++){
		if(T>=a[i].m){
			ans+=a[i].p;
			T-=a[i].m;
		}else{
			ans+=T*a[i].p*1.00/a[i].m;
			cout << fixed << setprecision(2) << ans;
			return 0;
		}//cout << fixed << setprecision(2) << ans;
	
	}return 0;	
}
2023/7/3 13:13
加载中...