80分实在找不出哪里出的问题
查看原帖
80分实在找不出哪里出的问题
443754
Sender_T楼主2021/4/10 23:54
#include<bits/stdc++.h>
using namespace std;
int n,t,size=0;
double val;
struct node{
	double weight,money,s;
}a[101];
bool cmp(node x,node y){
    return x.s > y.s;
}
int main(){
	cin>>n>>t;
	for(int i=1;i<=n;i++){
		cin>>a[i].weight>>a[i].money;
		a[i].s=a[i].money/a[i].weight;
	}
	sort(a+1,a+1+n,cmp);
	/**for(int i=1;i<=n;i++){
		cout<<a[i].money<<" "<<a[i].weight<<endl;
	}
	**/
	for(int i=1;i<=n;i++){
		if(size+a[i].weight >=t){
			val+=a[i].s*(t-size);
			printf("%0.2f",val);
			break;
		}else{
			size+=a[i].weight;
			val+=a[i].money;
		}
	}
	return 0;	
}
2021/4/10 23:54
加载中...