QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#466686#8832. Daily DisinfectionUSP_USP_USP#WA 2ms3872kbC++20839b2024-07-08 02:16:302024-07-08 02:16:31

Judging History

你现在查看的是最新测评结果

  • [2024-07-08 02:16:31]
  • 评测
  • 测评结果:WA
  • 用时:2ms
  • 内存:3872kb
  • [2024-07-08 02:16:30]
  • 提交

answer

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

using ll = long long;
#define int ll
#define pb push_back
#define all(v) (v).begin(), (v).end()

void dbg_out() { cerr << endl; }
template<typename H, typename... T>
void dbg_out(H h, T... t) { cerr << ' ' << h; dbg_out(t...); }
#define dbg(...) { cerr << #__VA_ARGS__ << ':'; dbg_out(__VA_ARGS__); }

void solve() {
	int n; cin >> n;
	string s; cin >> s;
	int c1 = count(all(s), '1');
	if(s[0] == '0' || s.back() == '0') {
		cout << c1 << '\n';
		return;
	}
	for(int i=0;i+1<n;i++) if(s[i] == '0' && s[i+1] == '0') {
		cout << c1 << '\n';
		return;
	}
	int pre = 0;
	while(s[pre] == '1') pre++;
	int suf = n - 1;
	while(s[suf] == '1') suf--;
	cout << c1 + min(pre, n - 1 - suf) << '\n';
}

signed main() {
	ios::sync_with_stdio(false); cin.tie(0);
	int t; cin >> t;
	while(t--)
		solve();
}

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3608kb

input:

3
2
01
5
00110
9
101010101

output:

1
2
6

result:

ok 3 number(s): "1 2 6"

Test #2:

score: -100
Wrong Answer
time: 2ms
memory: 3872kb

input:

10000
15
010111111011011
10
1000101111
10
0011111101
1
0
3
110
4
1000
8
10000111
20
00000101000100001110
13
1101110110110
13
0111100011010
17
00001001111110101
1
0
20
10001010011000111100
11
00100110101
11
10110101000
15
001011110011000
16
1110111110000111
15
011110110110010
1
0
20
10110001101100010...

output:

11
6
7
0
2
1
4
6
9
7
9
0
9
5
5
7
11
9
0
9
8
7
3
6
0
6
2
5
4
8
10
4
6
1
7
2
1
8
1
9
11
9
13
4
11
13
19
6
4
4
5
1
1
7
7
5
3
0
0
11
8
5
6
7
6
4
9
1
4
5
12
0
2
10
4
3
7
7
3
7
4
3
7
9
15
2
6
6
9
8
6
1
2
6
2
11
10
5
0
0
4
7
4
7
0
4
7
9
3
3
10
3
6
11
8
1
8
6
5
2
4
9
7
1
5
7
8
3
5
11
6
10
8
8
9
16
2
7
6
4
3...

result:

wrong answer 40th numbers differ - expected: '8', found: '9'