CSES - Datatähti 2022 alku - Results
Submission details
Task:Spiraali
Sender:kpop
Submission time:2021-10-06 07:23:47 +0300
Language:CPython3
Status:READY
Result:35
Feedback
groupverdictscore
#1ACCEPTED15
#2ACCEPTED20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.02 s1details
#2ACCEPTED0.03 s2details
#3--3details

Code

inn = input().split(' ')
n = int(inn[0])
t = int(inn[1])

summat = []
last = n

for i in range(n//2):
    p = last+last-1+last-1+last-2

    if len(summat) > 0:
        p = summat[i-1]+p

    summat.append(p)
    last -= 2

summat=[0]+summat

for _ in range(t):
    inn = input().split(' ')
    y = int(inn[0])
    x = int(inn[1])

    nth = min(y, x)

    up = y-1
    bottom = n-y
    left = x-1
    right = n-x

    mins = min(up, bottom, left, right)
    nth = mins + 1

    result = summat[mins]
    last = n-(2*mins)

    if mins == left:
        print(result+(y-nth)+1)
        continue

    result += last

    if mins == bottom:
        print(result+(x-nth))
        continue

    result += last-1

    if mins == right:
        print(result+n-y-mins)
        continue

    result += last-1

    if mins == up:
        print(result+(n-x)-mins)
        continue

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
10 100
1 1
1 2
1 3
1 4
...

correct output
1
36
35
34
33
...

user output
1
36
35
34
33
...

Test 2

Group: 2

Verdict: ACCEPTED

input
1000 1000
371 263
915 322
946 880
53 738
...

correct output
773533
312166
206053
200080
593922
...

user output
773533
312166
206053
200080
593922
...

Test 3

Group: 3

Verdict:

input
1000000000 1000
177757853 827347032
409613589 419171337
739269360 256524697
328695530 896842209
...

correct output
571375684522141210
967321186816598569
762879105851175000
370065046779516790
936897883750373771
...

user output
(empty)