CSES - Datatähti 2021 alku - Results
Submission details
Task:2021-luvut
Sender:Nanohenry
Submission time:2020-10-01 15:35:24 +0300
Language:C++11
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
#40
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 2, 3, 4details
#20.01 s1, 2, 3, 4details
#30.01 s1, 2, 3, 4details
#40.01 s1, 2, 3, 4details
#50.01 s1, 2, 3, 4details
#60.01 s1, 2, 3, 4details
#70.01 s1, 2, 3, 4details
#80.01 s1, 2, 3, 4details
#90.01 s1, 2, 3, 4details
#100.01 s1, 2, 3, 4details
#110.03 s2, 3, 4details
#120.01 s2, 3, 4details
#130.03 s2, 3, 4details
#140.01 s2, 3, 4details
#150.03 s2, 3, 4details
#160.03 s2, 3, 4details
#170.02 s2, 3, 4details
#180.03 s2, 3, 4details
#190.03 s2, 3, 4details
#200.02 s2, 3, 4details
#21--3, 4details
#22--3, 4details
#23--3, 4details
#24--3, 4details
#25--3, 4details
#26--3, 4details
#27--3, 4details
#28--3, 4details
#29--3, 4details
#30--3, 4details
#31--4details
#32--4details
#33--4details
#34--4details
#35--4details
#36--4details
#37--4details
#38--4details
#39--4details
#40--4details

Code

#include <iostream>

using namespace std;

typedef long long ll;

ll n, a, m, f, j;

/*
1: {1, 2, 0}
2: {9, 10, 0}
9: {1, 0, 0}
10: {9, 10, 30}
30: {100, 0, 0}
80: {9, 0, 0}
100: {80, 1000, 100}
1000: {1000, 100, 3000}
3000: {10000, 0, 0}
8000: {100, 0, 0}
10000: {8000, 10000, 0}

1: {0, 1, 0}
2: {1, 2, 0}
9: {-2, 0, 0}
10: {-1, 0, 1}
30: {2, 0, 0}
80: {-3, 0, 0}
100: {-1, 1, 0}
1000: {0, -1, 1}
3000: {2, 0, 0}
8000: {-3, 0, 0}
10000: {-1, 0, 0}
*/

const ll o[11] = {1, 2, 9, 10, 30, 80, 100, 1000, 3000, 8000, 10000};

const ll c[11][3] = {
	{0, 1, 0},
    {1, 2, 0},
    {-2, 0, 0},
    {-1, 0, 1},
    {2, 0, 0},
    {-3, 0, 0},
    {-1, 1, 0},
    {0, -1, 1},
    {2, 0, 0},
    {-3, 0, 0},
    {-1, 0, 0}
};

const ll l[4] = {1, 2, 0, 2};

inline bool h(ll x) {
	f = 0;
	while (x > 0 && f < 4) {
		if (x % 10 == l[f]) {
			f++;
		}
		x /= 10;
	}
	return f == 4;
}

int main() {
	cin >> n;
	a = 2021;
	if (n == 1) {
		cout << a << endl;
		return 0;
	}
	m = 10;
	while (n > 1) {
		for (j = 0; j < 3; j++) {
			if (h(a + o[m + c[m][j]])) {
				m += c[m][j];
				a += o[m];
				n--;
				break;
			}
		}
	}
	cout << a << endl;
}

Test details

Test 1

Group: 1, 2, 3, 4

Verdict: ACCEPTED

input
10

correct output
20214

user output
20214

Test 2

Group: 1, 2, 3, 4

Verdict:

input
359

correct output
202661

user output
612021

Test 3

Group: 1, 2, 3, 4

Verdict:

input
392

correct output
202819

user output
625021

Test 4

Group: 1, 2, 3, 4

Verdict:

input
715

correct output
230721

user output
1254021

Test 5

Group: 1, 2, 3, 4

Verdict:

input
278

correct output
202219

user output
420217

Test 6

Group: 1, 2, 3, 4

Verdict:

input
296

correct output
202318

user output
421021

Test 7

Group: 1, 2, 3, 4

Verdict:

input
427

correct output
203214

user output
720321

Test 8

Group: 1, 2, 3, 4

Verdict:

input
565

correct output
208212

user output
1020321

Test 9

Group: 1, 2, 3, 4

Verdict:

input
289

correct output
202311

user output
420321

Test 10

Group: 1, 2, 3, 4

Verdict:

input
342

correct output
202581

user output
521021

Test 11

Group: 2, 3, 4

Verdict:

input
964486

correct output
182502018

user output
1412334021

Test 12

Group: 2, 3, 4

Verdict:

input
110979

correct output
20296916

user output
173620251

Test 13

Group: 2, 3, 4

Verdict:

input
759149

correct output
126108721

user output
1140912021

Test 14

Group: 2, 3, 4

Verdict:

input
234934

correct output
25023210

user output
314259021

Test 15

Group: 2, 3, 4

Verdict:

input
610310

correct output
120288133

user output
909280021

Test 16

Group: 2, 3, 4

Verdict:

input
956690

correct output
182027419

user output
1399129021

Test 17

Group: 2, 3, 4

Verdict:

input
608459

correct output
120281827

user output
905920241

Test 18

Group: 2, 3, 4

Verdict:

input
944777

correct output
175260251

user output
1378920214

Test 19

Group: 2, 3, 4

Verdict:

input
880780

correct output
152270421

user output
1286724021

Test 20

Group: 2, 3, 4

Verdict:

input
418357

correct output
68202361

user output
604320210

Test 21

Group: 3, 4

Verdict:

input
713294506861

correct output
20099206371786

user output
(empty)

Test 22

Group: 3, 4

Verdict:

input
191431126351

correct output
4193020274761

user output
(empty)

Test 23

Group: 3, 4

Verdict:

input
778422318223

correct output
20247733120134

user output
(empty)

Test 24

Group: 3, 4

Verdict:

input
931090767075

correct output
20691282041612

user output
(empty)

Test 25

Group: 3, 4

Verdict:

input
198806129726

correct output
4275365802196

user output
(empty)

Test 26

Group: 3, 4

Verdict:

input
724343399444

correct output
20128443204610

user output
(empty)

Test 27

Group: 3, 4

Verdict:

input
105064053560

correct output
2350677231115

user output
(empty)

Test 28

Group: 3, 4

Verdict:

input
236866700902

correct output
5872395029521

user output
(empty)

Test 29

Group: 3, 4

Verdict:

input
696349488695

correct output
20034225603103

user output
(empty)

Test 30

Group: 3, 4

Verdict:

input
30929267826

correct output
1205256095901

user output
(empty)

Test 31

Group: 4

Verdict:

input
576379198814226780

correct output
4185251600926331891

user output
(empty)

Test 32

Group: 4

Verdict:

input
291698664446913099

correct output
2280132983584730156

user output
(empty)

Test 33

Group: 4

Verdict:

input
693146378550043345

correct output
5270258230724009910

user output
(empty)

Test 34

Group: 4

Verdict:

input
685982323362439932

correct output
5236052744416920782

user output
(empty)

Test 35

Group: 4

Verdict:

input
838865925103308874

correct output
6800200426815679149

user output
(empty)

Test 36

Group: 4

Verdict:

input
766426223219980635

correct output
6112960212822572807

user output
(empty)

Test 37

Group: 4

Verdict:

input
652970397451919317

correct output
4923188580186259818

user output
(empty)

Test 38

Group: 4

Verdict:

input
188458586650539464

correct output
1903508375720755921

user output
(empty)

Test 39

Group: 4

Verdict:

input
157646989818721527

correct output
1525038392797601315

user output
(empty)

Test 40

Group: 4

Verdict:

input
898606361978236778

correct output
7326676702587314407

user output
(empty)