CSES - Datatähti 2021 loppu - Results
Submission details
Task:Kolmijako
Sender:Guuber
Submission time:2021-01-23 16:56:39 +0200
Language:C++ (C++17)
Status:READY
Result:22
Feedback
groupverdictscore
#1ACCEPTED22
#20
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2details
#2ACCEPTED0.01 s1, 2details
#3ACCEPTED0.01 s1, 2details
#4ACCEPTED0.01 s1, 2details
#5ACCEPTED0.01 s1, 2details
#6ACCEPTED0.01 s1, 2details
#7ACCEPTED0.01 s1, 2details
#8ACCEPTED0.01 s1, 2details
#9--2details
#10--2details
#11--2details
#12--2details
#13--2details
#14--2details
#15--2details

Compiler report

input/code.cpp: In function 'std::__cxx11::string b3(int, int)':
input/code.cpp:10:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  while(s.size() < k) s += '0';
        ~~~~~~~~~^~~
input/code.cpp: In function 'int main()':
input/code.cpp:28:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int j = 0; j < s3.size(); j++){
                  ~~^~~~~~~~~~~

Code

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

string b3(int a, int k){
	string s = "";
	while(a > 0){
		s += '0'+a%3;
		a /= 3;
	}
	while(s.size() < k) s += '0';
	reverse(s.begin(), s.end());
	return s;
}

int main(){
	int n;
	cin >> n;

	int kolme = 1;
	for(int i = 0; i < n; i++){
		kolme *= 3;
	}
	for(int i = 0; i < kolme; i++){
		string s3 = b3(i, n);
		long long s0 = 0;
		long long s1 = 0;
		long long s2 = 0;
		for(int j = 0; j < s3.size(); j++){
			if(s3[j] == '0') s0 += j+1;
			if(s3[j] == '1') s1 += j+1;
			if(s3[j] == '2') s2 += j+1;
		}
		if(s3 == "22201"){
		cout << s0 << " " << s1 << " " << s2 << "\n";
		}
		if(s0 == s1-1 && s0 == s2-2) {
			for(auto u : s3){
				cout << (char)(u + 1) << " ";
			}
			cout << "\n";
			return 0;
		}
	}
	cout << "IMPOSSIBLE\n";
}

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
3

correct output
1 2 3 

user output
1 2 3 

Test 2

Group: 1, 2

Verdict: ACCEPTED

input
4

correct output
IMPOSSIBLE

user output
IMPOSSIBLE

Test 3

Group: 1, 2

Verdict: ACCEPTED

input
5

correct output
1 3 1 3 2 

user output
1 3 1 3 2 

Test 4

Group: 1, 2

Verdict: ACCEPTED

input
6

correct output
1 3 2 2 1 3 

user output
1 3 2 2 1 3 

Test 5

Group: 1, 2

Verdict: ACCEPTED

input
7

correct output
IMPOSSIBLE

user output
IMPOSSIBLE

Test 6

Group: 1, 2

Verdict: ACCEPTED

input
8

correct output
2 3 1 2 3 3 2 1 

user output
1 1 1 2 1 3 3 2 

Test 7

Group: 1, 2

Verdict: ACCEPTED

input
9

correct output
1 2 3 1 2 3 3 2 1 

user output
1 1 1 2 2 2 3 1 3 

Test 8

Group: 1, 2

Verdict: ACCEPTED

input
10

correct output
IMPOSSIBLE

user output
IMPOSSIBLE

Test 9

Group: 2

Verdict:

input
42

correct output
1 3 2 2 1 3 1 2 3 3 2 1 1 2 3 ...

user output
(empty)

Test 10

Group: 2

Verdict:

input
95

correct output
1 3 1 3 2 1 2 3 3 2 1 1 2 3 3 ...

user output
(empty)

Test 11

Group: 2

Verdict:

input
96

correct output
1 3 2 2 1 3 1 2 3 3 2 1 1 2 3 ...

user output
(empty)

Test 12

Group: 2

Verdict:

input
97

correct output
IMPOSSIBLE

user output
(empty)

Test 13

Group: 2

Verdict:

input
98

correct output
2 3 1 2 3 3 2 1 1 2 3 3 2 1 1 ...

user output
(empty)

Test 14

Group: 2

Verdict:

input
99

correct output
1 2 3 1 2 3 3 2 1 1 2 3 3 2 1 ...

user output
(empty)

Test 15

Group: 2

Verdict:

input
100

correct output
IMPOSSIBLE

user output
(empty)