CSES - HIIT Open 2016 - Results
Submission details
Task:Bit strings
Sender:ContinuedLife
Submission time:2016-05-28 14:25:34 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.05 sdetails
#2--details
#3--details
#4ACCEPTED0.97 sdetails
#5--details
#6--details

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:16:47: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for(int right = left + 1; right < str.size(); ++right){
                                               ^
input/code.cpp:23:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int i =0; i < ans.size(); ++i){
                              ^

Code

#include <bits/stdc++.h>
#define _ ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0), cout.precision(6);

using namespace std;

#define maxN 1e5
int main(){ _
	int TC;	cin >> TC;
	while(TC--){
		string str;	cin >> str;
		vector<int> ans(str.size()+1, 0);
		//cout << str.size() << endl;
		for(int left = -1; left < int(str.size()); ++left){
//				cout << "get here> " << endl;
			int acc = 0;
			for(int right = left + 1; right < str.size(); ++right){
//				cout << str[right] << " ";
//				cout << "get here> " << endl;
				if(str[right] == '1'){	++acc;	}
				ans[acc] += 1;
			}
		}
		for(int i =0; i < ans.size(); ++i){
			if(i)	cout << " ";
			cout << ans[i];
		}	cout << endl;
				
	}
		

	return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
20
00011000100111001100
00001001111111100010
10110011110101111101
01111011010010100111
...

correct output
21 33 39 30 23 20 25 7 12 0 0 ...

user output
21 33 39 30 23 20 25 7 12 0 0 ...

Test 2

Verdict:

input
1
001010110001110001110000110011...

correct output
99028 198023 199224 198569 199...

user output
(empty)

Test 3

Verdict:

input
1
111010111001001100100101011110...

correct output
99270 199585 198291 199812 198...

user output
(empty)

Test 4

Verdict: ACCEPTED

input
20
001001010011101100110111110010...

correct output
5022 10235 10021 9985 10019 99...

user output
5022 10235 10021 9985 10019 99...

Test 5

Verdict:

input
10
110101000110110101011011101010...

correct output
9955 20073 20158 19923 20014 1...

user output
(empty)

Test 6

Verdict:

input
1
111111111111111111111111111111...

correct output
968 100966 100967 100965 10096...

user output
(empty)