都没有过 急急急
查看原帖
都没有过 急急急
866969
telankesi楼主2022/12/15 20:11
#include <stdio.h>
int main() {
	int n, t;
	double sum = 0;
	scanf("%d %d", &n, &t);
	int m[110];
	int v[110];
	int f[110];
	for (int i = 0; i < n; i++) {
		scanf("%d %d", &m[i], &v[i]);
		f[i] = v[i] / m[i];
	}
	for (int i = 0; i < n-1; i++) {
		for (int j = i + 1; j < n; j++) {
			if (f[j] > f[i]) {
				int k = f[j];
				f[j] = f[i];
				f[i] = k;
				int q = m[j];
				m[j] = m[i];
				m[i] = q;
			}
		}
	}
	for (int i = 0; i < n; i++) {
		if (t >= m[i]) { sum += f[i] * m[i]; t -= m[i]; }
		else {
			sum += t * f[i]; break;
		}
	}

	printf("%.2f", sum);
	return 0;
}
2022/12/15 20:11
加载中...