QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#673365#8057. Best Carry Player 4lonelywolf#WA 0ms3520kbC++201.2kb2024-10-24 21:56:252024-10-24 21:56:27

Judging History

This is the latest submission verdict.

  • [2024-10-24 21:56:27]
  • Judged
  • Verdict: WA
  • Time: 0ms
  • Memory: 3520kb
  • [2024-10-24 21:56:25]
  • Submitted

answer

#include <bits/stdc++.h>  
using namespace std;  

#define int long long  

void solve() {
	int m;
	cin >> m;
	
	int sa = 0, sb = 0;
	vector<int> a(m), b(m);
	for (int i = 0; i < m; i++) {
		cin >> a[i];
		sa += a[i];
	}
	for (int i = 0; i < m; i++) {
		cin >> b[i];
		sb += b[i];
	}

	if (sa > sb) {
		b[0] += sa - sb;
	} else {
		a[0] += sb - sa;
	}

	reverse(b.begin(), b.end());

	int mx = 0;
	auto work = [&]() {
		int ans = 0;
		int s = 0;

		for (int i = 0; i < m; i++) {
			s += b[i];
			if (s >= a[i]) {
				s -= a[i];
				ans += a[i];
			} else {
				ans += s;
				s = 0;
			}
		}	

		for (int i = 0; i < m; i++) {
			cout << a[i] << " \n"[i + 1 == m];
		}
		for (int i = 0; i < m; i++) {
			cout << b[i] << " \n"[i + 1 == m];
		}
		cout << ans << "\n";
		
		return ans;
	};

	for (int i = 0; i < m; i++) {
		for (int j = i + 1; j < m; j++) {
			if (b[i] > 0 && a[j] > 0) {
				a[j]--, b[i]--;
				mx = max(work() + 1, mx);
				a[j]++, b[i]++;
			}
		}
	}

	cout << mx << "\n";
}

signed main() {  
    ios::sync_with_stdio(false);
    cin.tie(nullptr);  

    int t;
    cin >> t;
    while (t--) {
    	solve();
    }

    return 0;
}  
  

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 3520kb

input:

5
2
1 2
3 4
3
1 0 1
0 1 0
4
1 0 0 1
1 1 1 1
5
123456 114514 1919810 233333 234567
20050815 998244353 0 0 0
10
5 3 5 3 2 4 2 4 1 5
9 9 8 2 4 4 3 5 3 0

output:

5 1
3 3
4
5
1 0 0
0 0 1
0
1
3 0 0 0
0 1 1 1
0
3 0 0 0
1 0 1 1
1
3 0 0 0
1 1 0 1
1
2
1015792944 114514 1919810 233333 234566
0 0 0 998244352 20050815
467899
467900
18 3 4 3 2 4 2 4 1 5
0 2 5 3 4 4 2 8 9 9
27
18 3 5 2 2 4 2 4 1 5
0 2 5 3 4 4 2 8 9 9
27
18 3 5 3 1 4 2 4 1 5
0 2 5 3 4 4 2 8 9 9
27
18 3 ...

result:

wrong answer 3rd numbers differ - expected: '2', found: '3'