QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#310651#6135. BooksBrotherCall#WA 208ms7644kbC++14941b2024-01-21 16:37:482024-01-21 16:37:48

Judging History

This is the latest submission verdict.

  • [2024-01-21 16:37:48]
  • Judged
  • Verdict: WA
  • Time: 208ms
  • Memory: 7644kb
  • [2024-01-21 16:37:48]
  • Submitted

answer

#include <iostream>
#include <cstdio>
#include <cmath>
#include <sstream>
#include <cstring>
#include <queue>
#define int long long
using namespace std;

const int N = 1e6 + 100;
int t;
int n , m , a[N] , maxx[N] , minn[N];
char c1[N] , c2[N];

signed main() {
	cin >> t;
	while(t --) {
		cin >> n >> m;
		
		int cnm = 0;
		for(int i = 1;i <= n;i ++) {
			cin >> a[i];
			if(a[i] == 0) cnm ++;
		}
		int l = 0 , r = 1e14 , ans = -1;
		int wcnm = r;
		while(l <= r) {
			int mid = l + r >> 1;
			int now = mid;
			int sum = 0;
			for(int i = 1;i <= n;i ++) {
				if(now >= a[i]) {
					now -= a[i];
					sum ++;
				}
			}
			if(sum == m) {
				ans = mid;
				l = mid + 1;
			} else if(sum > m) {
				r = mid - 1;
			} else if(sum < m) l = mid + 1;
		}
		if(cnm + m == n) cout << "Richman\n";else
		if(cnm + m > n || ans == -1) cout << "Impossible\n";else
		cout << ans << endl;
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 5724kb

input:

4
4 2
1 2 4 8
4 0
100 99 98 97
2 2
10000 10000
5 3
0 0 0 0 1

output:

6
96
Richman
Impossible

result:

ok 4 lines

Test #2:

score: -100
Wrong Answer
time: 208ms
memory: 7644kb

input:

10012
1 0
2
3 2
0 1 0
2 1
0 0
100000 99999
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000...

output:

1
Impossible
Impossible
99999999999999
38
80
Richman
97
460
Richman
24
90
98
30
15
Richman
Richman
Richman
54
Richman
Impossible
450
24
44
349
34
513
28
161
238
Richman
Richman
Richman
66
274
2
160
76
58
91
71
3
Richman
125
32
15
Richman
21
26
Richman
7
Richman
247
300
Richman
Richman
60
312
62
276
...

result:

wrong answer 2nd lines differ - expected: '0', found: 'Impossible'