这道题貌似用不到队列啊
本蒟蒻的满分代码↓
#include <iostream>
#include <algorithm>
using namespace std;
int k[100005], d[100005], m[100005], f[100005], curk = 0, curd = 0, curm = 0, curf = 0;
bool cmp(int a, int b)
{
return a > b;
}
void zx(int a, int b, int c)
{
double sum = 0;
sum += k[++curk];
for (int i = 1; i <= a; i++)
{
sum += d[++curd];
}
for (int i = 1; i <= b; i++)
{
sum += m[++curm];
}
for (int i = 1; i <= c; i++)
{
sum += f[++curf];
}
sum /= 11;
printf("%.2f\n", sum);
}
int main()
{
int K, D, M, F, Q;
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];
}
sort(k + 1, k + K + 1, cmp);
sort(d + 1, d + D + 1, cmp);
sort(m + 1, m + M + 1, cmp);
sort(f + 1, f + F + 1, cmp);
cin >> Q;
for (int i = 1; i <= Q; i++)
{
int a, b, c;
cin >> a >> b >> c;
zx(a, b, c);
}
return 0;
}