CSES - Datatähti 2021 alku - Results
Submission details
Task:Ratsun reitit
Sender:tassu
Submission time:2020-09-28 13:43:18 +0300
Language:Python3 (CPython3)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.02 s1, 2, 3details
#20.02 s1, 2, 3details
#30.02 s1, 2, 3details
#40.03 s1, 2, 3details
#50.02 s1, 2, 3details
#60.03 s1, 2, 3details
#70.03 s1, 2, 3details
#80.03 s2, 3details
#90.10 s2, 3details
#100.10 s2, 3details
#110.28 s3details
#120.62 s3details
#130.64 s3details

Code

size = int(input())
max_size = int(max(10, size*0.7)) # isoin luku on yleensä 60% koosta, 70% on varmaan turvallinen raja katkaista rekursio
matrix = [[size*2]*size for i in range(size)]
matrix[0][0] = 0

def check_point(point):
    return point[0] >= 0 and point[0] < size and point[1] >= 0 and point[1] < size

def get_possibilities_for_point(x, y):
    global size
    return filter(check_point, [
        (x-2, y-1),
        (x-2, y+1),
        (x+2, y-1),
        (x+2, y+1),
        (x-1, y-2),
        (x-1, y+2),
        (x+1, y-2),
        (x+1, y+2),
    ])

def kay_lapi(x, y, count):
    global max_size
    if count > max_size:
        return
    for point in get_possibilities_for_point(x, y):
        if matrix[point[0]][point[1]] <= count:
            continue
        matrix[point[0]][point[1]] = count
        kay_lapi(point[0], point[1], count+1)


kay_lapi(0, 0, 0)

for row in matrix:
    print(' '.join(str(x) for x in row))

Test details

Test 1

Group: 1, 2, 3

Verdict:

input
4

correct output
0 3 2 5 
3 4 1 2 
2 1 4 3 
5 2 3 2 

user output
0 2 1 4
2 3 0 1
1 0 3 2
4 1 2 1

Test 2

Group: 1, 2, 3

Verdict:

input
5

correct output
0 3 2 3 2 
3 4 1 2 3 
2 1 4 3 2 
3 2 3 2 3 
2 3 2 3 4 

user output
0 2 1 2 1
2 3 0 1 2
1 0 3 2 1
2 1 2 1 2
1 2 1 2 3

Test 3

Group: 1, 2, 3

Verdict:

input
6

correct output
0 3 2 3 2 3 
3 4 1 2 3 4 
2 1 4 3 2 3 
3 2 3 2 3 4 
2 3 2 3 4 3 
...

user output
0 2 1 2 1 2
2 3 0 1 2 3
1 0 3 2 1 2
2 1 2 1 2 3
1 2 1 2 3 2
...

Test 4

Group: 1, 2, 3

Verdict:

input
7

correct output
0 3 2 3 2 3 4 
3 4 1 2 3 4 3 
2 1 4 3 2 3 4 
3 2 3 2 3 4 3 
2 3 2 3 4 3 4 
...

user output
0 2 1 2 1 2 3
2 3 0 1 2 3 2
1 0 3 2 1 2 3
2 1 2 1 2 3 2
1 2 1 2 3 2 3
...
Truncated

Test 5

Group: 1, 2, 3

Verdict:

input
8

correct output
0 3 2 3 2 3 4 5 
3 4 1 2 3 4 3 4 
2 1 4 3 2 3 4 5 
3 2 3 2 3 4 3 4 
2 3 2 3 4 3 4 5 
...

user output
0 2 1 2 1 2 3 4
2 3 0 1 2 3 2 3
1 0 3 2 1 2 3 4
2 1 2 1 2 3 2 3
1 2 1 2 3 2 3 4
...
Truncated

Test 6

Group: 1, 2, 3

Verdict:

input
9

correct output
0 3 2 3 2 3 4 5 4 
3 4 1 2 3 4 3 4 5 
2 1 4 3 2 3 4 5 4 
3 2 3 2 3 4 3 4 5 
2 3 2 3 4 3 4 5 4 
...

user output
0 2 1 2 1 2 3 4 3
2 3 0 1 2 3 2 3 4
1 0 3 2 1 2 3 4 3
2 1 2 1 2 3 2 3 4
1 2 1 2 3 2 3 4 3
...
Truncated

Test 7

Group: 1, 2, 3

Verdict:

input
10

correct output
0 3 2 3 2 3 4 5 4 5 
3 4 1 2 3 4 3 4 5 6 
2 1 4 3 2 3 4 5 4 5 
3 2 3 2 3 4 3 4 5 6 
2 3 2 3 4 3 4 5 4 5 
...

user output
0 2 1 2 1 2 3 4 3 4
2 3 0 1 2 3 2 3 4 5
1 0 3 2 1 2 3 4 3 4
2 1 2 1 2 3 2 3 4 5
1 2 1 2 3 
...
Truncated

Test 8

Group: 2, 3

Verdict:

input
25

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated

Test 9

Group: 2, 3

Verdict:

input
49

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated

Test 10

Group: 2, 3

Verdict:

input
50

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated

Test 11

Group: 3

Verdict:

input
75

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated

Test 12

Group: 3

Verdict:

input
99

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated

Test 13

Group: 3

Verdict:

input
100

correct output
0 3 2 3 2 3 4 5 4 5 6 7 6 7 8 ...

user output
0 2 1 2 1 2 3 4 3 4 5 6 5 6 7 ...
Truncated