第一个数据TLE 80分蒟蒻求助!
查看原帖
第一个数据TLE 80分蒟蒻求助!
993122
xiaorunrun520楼主2023/9/9 15:08
#include<bits/stdc++.h>
using namespace std;
int n,t,maxx;
double ans=0.00;
struct jin{
	double m;
	double w;
	double p;
	bool k;
}a[110];
int find(){
	maxx = n+2;
	for(int i = 1;i<=n;i++){
		if(a[i].p >= a[maxx].p && a[i].k == false){
			maxx = i;
		}
	}
	a[maxx].k = true;
	return maxx;
}
int main(){
	cin>>n>>t;
	if(n==0 || t==0){
		cout<<0;
		return 0;
	}
	for(int i = 1;i<=n;i++){
		cin>>a[i].m>>a[i].w;
		a[i].p = a[i].w/a[i].m;
	}
	while(t>=0){
		int i = find();
		if(a[i].m < t) {
			ans+=a[i].w;
			t -= a[i].m;
		}
		else {
			ans+=t*a[i].p;
			cout<<fixed<<setprecision(2)<<ans; 
			return 0;
		}
	}
	return 0;
}

代码写的稀烂 望各位大佬轻喷

2023/9/9 15:08
加载中...