Submission #40162838
Source Code Expand
#include <bits/stdc++.h> using namespace std; const int N = 1e6 + 5; int s[N], suf[N], ans, n, ss[N]; char str[N]; void check(int up) { for(int i = 1; i <= n; i++) ss[i] = s[i]; suf[n] = ss[n]; for(int i = n - 1; i; i--) suf[i] = max(suf[i + 1], ss[i]); int tg = 0, mn = 0, mx = 0; for(int i = 1; i <= n; i++) { if (str[i] == '?' && suf[i] + tg + 2 <= up) tg += 2; ss[i] += tg; mn = min(mn, ss[i]), mx = max(mx, ss[i]); } ans = min(ans, mx - mn); } int main() { scanf("%s", str + 1), n = strlen(str + 1); int mn = 0, mx = 0; for(int i = 1; i <= n; i++) { if (str[i] == '1') s[i] = s[i - 1] + 1; else s[i] = s[i - 1] - 1; mn = min(mn, s[i]), mx = max(mx, s[i]); } ans = mx - mn; for(int i = 0; i <= 1; i++) check(mx + i); printf("%d\n", ans); }
Submission Info
Submission Time | |
---|---|
Task | B - 01 Unbalanced |
User | Indus |
Language | C++ (GCC 9.2.1) |
Score | 800 |
Code Size | 872 Byte |
Status | AC |
Exec Time | 35 ms |
Memory | 16428 KiB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:22:10: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] 22 | scanf("%s", str + 1), n = strlen(str + 1); | ~~~~~^~~~~~~~~~~~~~~
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 800 / 800 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt |
All | 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00-sample-01.txt | AC | 7 ms | 3636 KiB |
00-sample-02.txt | AC | 2 ms | 3652 KiB |
00-sample-03.txt | AC | 2 ms | 3488 KiB |
01-01.txt | AC | 2 ms | 3560 KiB |
01-02.txt | AC | 31 ms | 16356 KiB |
01-03.txt | AC | 32 ms | 16428 KiB |
01-04.txt | AC | 35 ms | 16292 KiB |
01-05.txt | AC | 33 ms | 16412 KiB |
01-06.txt | AC | 33 ms | 16288 KiB |
01-07.txt | AC | 34 ms | 16368 KiB |
01-08.txt | AC | 27 ms | 16292 KiB |
01-09.txt | AC | 34 ms | 16424 KiB |
01-10.txt | AC | 22 ms | 16372 KiB |
01-11.txt | AC | 23 ms | 16412 KiB |
01-12.txt | AC | 22 ms | 16428 KiB |
01-13.txt | AC | 29 ms | 16316 KiB |
01-14.txt | AC | 28 ms | 16168 KiB |
01-15.txt | AC | 29 ms | 16360 KiB |
01-16.txt | AC | 29 ms | 16372 KiB |
01-17.txt | AC | 29 ms | 16288 KiB |
01-18.txt | AC | 28 ms | 16372 KiB |
01-19.txt | AC | 30 ms | 16284 KiB |
01-20.txt | AC | 27 ms | 16264 KiB |
01-21.txt | AC | 25 ms | 16380 KiB |
01-22.txt | AC | 25 ms | 16428 KiB |
01-23.txt | AC | 29 ms | 16356 KiB |
01-24.txt | AC | 29 ms | 16380 KiB |
01-25.txt | AC | 31 ms | 16164 KiB |
01-26.txt | AC | 32 ms | 16264 KiB |
01-27.txt | AC | 29 ms | 16356 KiB |
01-28.txt | AC | 34 ms | 16284 KiB |
01-29.txt | AC | 32 ms | 16288 KiB |
01-30.txt | AC | 24 ms | 16288 KiB |
01-31.txt | AC | 30 ms | 16368 KiB |
01-32.txt | AC | 27 ms | 16364 KiB |
01-33.txt | AC | 27 ms | 16408 KiB |
01-34.txt | AC | 26 ms | 16376 KiB |
01-35.txt | AC | 23 ms | 16412 KiB |
01-36.txt | AC | 23 ms | 16332 KiB |
01-37.txt | AC | 25 ms | 16380 KiB |
01-38.txt | AC | 26 ms | 16316 KiB |
01-39.txt | AC | 27 ms | 16380 KiB |
01-40.txt | AC | 25 ms | 16288 KiB |
01-41.txt | AC | 28 ms | 16240 KiB |
01-42.txt | AC | 27 ms | 16288 KiB |
01-43.txt | AC | 27 ms | 16276 KiB |