80,第一个没过,求助
查看原帖
80,第一个没过,求助
1421000
yu198034楼主2024/10/5 18:02
#include <iostream>
using namespace std;
int main() {
	int N; int maxx = 1; int lT = 0;
	float T; float ans = 0;
	float weight[101];
	float price[101];
	cin >> N >> T;
	for (int i = 1; i <= N; i++) {
		int k;
		cin >> weight[i];
		cin >> k;
		price[i] = k / weight[i];
		//if (maxx < price[i]) maxx =
	}
	while (T > 0) {
		maxx = 1;
		for (int i = 1; i <= N; i++) {
			if (price[maxx] < price[i]) maxx = i;
		}
		T = T - weight[maxx];
		if (T >= 0) {
			ans += weight[maxx] * price[maxx];
			price[maxx] = -1;
			continue;
		}
		ans += weight[maxx] * price[maxx] + T * price[maxx];
		price[maxx] = -1;
	}
	printf("%.2f",ans);
	return 0;

}
2024/10/5 18:02
加载中...