DALAO们 第四个点往后都RE了 求助呀
查看原帖
DALAO们 第四个点往后都RE了 求助呀
661541
GaryRoyal楼主2022/6/29 12:59
#include<iostream>
#include<iomanip>
using namespace std;
int K[10015], D[10015], M[10015], F[100115];
int zs[15][4];
void QSort(int a[], int low, int high)
{
	int mid = a[(low + high) / 2];
	int l = low, h = high;
	do
	{
		while (a[l] < mid)l++;
		while (a[h] > mid)h--;
		if (l <= h)
			swap(a[l++], a[h--]);
	} while (l <= h);
	if (low < h)QSort(a, low, h);
	if (high > l)QSort(a, l, high);
}
int main()
{
	int k, d, m, f;
	cin >> k >> d >> m >> f;
	for (int i = 1; i <= k; i++)
		cin >> K[i];
	for (int i = 1; i <= d; i++)
		cin >> D[i];
	for (int i = 1; i <= m; i++)
		cin >> M[i];
	for (int i = 1; i <= f; i++)
		cin >> F[i];
	QSort(K, 1, k);
	QSort(D, 1, d);
	QSort(M, 1, m);
	QSort(F, 1, f);
	int Q;
	cin >> Q;
	for (int i = 1; i <= Q; i++)
		cin >> zs[i][1] >> zs[i][2] >> zs[i][3];
	for (int i = 1; i <= Q; i++)
	{
		double sum = 0;
		for (int j = d; j > d - zs[i][1] && j > 0; j--)
			sum += D[j];
		d -= zs[i][1];
		for (int j = m; j > m - zs[i][2] && j > 0; j--)
			sum += M[j];
		m -= zs[i][2];
		for (int j = f; j > f - zs[i][3] && j > 0; j--)
			sum += F[j];
		f -= zs[i][3];
		sum += K[k];
		k--;
		cout << fixed << setprecision(2) << sum / 11 << endl;
	}
	return 0;
}

不是很懂哪边出问题了 求大佬指点

2022/6/29 12:59
加载中...