CSES - Datatähti 2018 alku - Results
Submission details
Task:Kyselyt
Sender:Uolevi
Submission time:2017-10-11 15:59:37 +0300
Language:Python3
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.10 s1details
#20.10 s2details
#30.14 s3details

Code

import math
k = int(input(""))
vastaus = []
for q in range(k):
    inputti = int(input(""))
    array = [9]
    modArray = []
    potenssit = [1,2,4,8,16]
    for i in range(1,19):
        array.append((array[i-1]*10)/(i)*(i+1))
    for i in range(19,0,-1):
        if inputti > sum(array[:i]):
            kohta = i+1
            break
        kohta = 1
    for i in range(0,18):
        modArray.append(array[i]%(i+2))
    if inputti < 10:
        vastaus.append(inputti)
    else:
        jokuluku = 0
        for i in range(0,18):
            if modArray[i] != 0:
                jokuluku+=1
            if i >= kohta:
                break
        luku = inputti-sum(array[:kohta-1])
        lukuYlä = math.ceil(luku/kohta) - 1
        lukuYlä += int(10**(kohta-1))
        string = int(int(inputti%(kohta)))-1
        if kohta == 18 or kohta == 2:
    #        print(string-1)
            string -=1
        elif kohta == 3:
            string -= 0
        elif kohta == 4:
            string -=1
        elif kohta == 5:
            string -= 3
        elif kohta == 6:
            string -= 3
        elif kohta == 7:
            string -= 5
        if kohta == 10:
            string -= 8
        elif kohta == 12:
            string -= 2

        elif kohta == 13:
            string -= 11
        elif kohta == 16:
            string -= 10
    #        print("Jee")

        else:
            string -= 1
        print(kohta)

    #    print(kohta)
        vastaus.append(str(lukuYlä)[string])
for i in vastaus:
    print(i)

Test details

Test 1

Group: 1

Verdict:

input
1000
582
214
723
273
...

correct output
0
1
7
7
6
...

user output
3
3
3
3
3
...

Error:
Traceback (most recent call last):
  File "input/code.py", line 60, in <module>
    vastaus.append(str(lukuYl\xe4)[string])
IndexError: string index out of range

Test 2

Group: 2

Verdict:

input
1000
615664
916441
627600
279508
...

correct output
1
2
3
2
2
...

user output
6
6
6
5
5
...

Test 3

Group: 3

Verdict:

input
1000
672274832941907421
260504693279721732
646999966092970935
100853063389774434
...

correct output
7
2
2
0
9
...

user output
17
17
17
16
17
...