求助求助这样写哪里错了
查看原帖
求助求助这样写哪里错了
1485780
Cherryphone楼主2024/12/4 21:42

样例明明过了为啥全wa

#define _CRT_SECURE_NO_WARNINGS
#include<bits/stdc++.h>
using namespace std;
int s[5], arr[5][21],sum=0;
vector<int> v;
void solve()
{
	for (int i = 1; i <= 4; i++)
		scanf("%d", &s[i]);
	for (int i = 1; i <= 4; i++)
		for (int j = 1; j <= s[i]; j++)
			scanf("%d", &arr[i][j]);
	for (int i = 1; i <= 4; i++)
	{
		for (int j = 1; j <= s[i]; j++)
			v.push_back(arr[i][j]);
		sort(v.begin(), v.end(), greater<int>());
		while (!v.empty())
		{
			sum += v.back();
			v[0] -= v.back();
			v[v.size()-1] = 0;
			sort(v.begin(), v.end(), greater<int>());
			while (v.back() == 0)
			{
				v.pop_back();
				if (v.empty())
					goto c;
			}
		}
		c:
		v.clear();
	}
}
int main()
{
	solve();
	printf("%d", sum);
	return 0;
}
2024/12/4 21:42
加载中...