Task: | Kyselyt |
Sender: | Hege |
Submission time: | 2017-10-11 21:55:40 +0300 |
Language: | Python3 |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 12 |
#2 | ACCEPTED | 25 |
#3 | ACCEPTED | 63 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.10 s | 1 | details |
#2 | ACCEPTED | 0.08 s | 2 | details |
#3 | ACCEPTED | 0.08 s | 3 | details |
Code
### KYSELYT (dt21k8-x(x-1)||x=10) ###def infiniteSumCalculator(a):# we always haz to bear with magnitude of the number.mag = 1# spec haz a bug, this is only a hotfix# lol this do-while h4x again :Dwhile True:# i dunno whats going on there but the shell shows it wurkza -= 9*10**(mag-1)*magif a <= 0:# counter the decrement ":D"a += 9*10**(mag-1)*magbreak# i++ :Dmag += 1a += mag-1## fix for the spec hotfix special case#if mag == 1:# a -= 1## ## second hotfix# #if mag == 2 and a == 1:# # mag -=1# a -= 1# lets just return this puke from shellreturn str(a // mag + 10**(mag-1) -1)[a % mag]# what about one useless main() moredef main(a):pass### just testing functions here ###def concatenated(a):return "".join([str(i) for i in range(1,a)])def massTest(n):q = concatenated(n)for i in range(n):try:b = infiniteSumCalculator(i+1)if q[i] != b:print(i, q[i], b, False)except Exception as e:print("{} {} {} {}: {}".format(i, q[i], b, e.__class__.__name__, e))### testing site ends here #### lets escape this thing from pyyttons moduulsif __name__ == "__main__":# this looks like a c-ish thingfor i in range(int(input())):# and this is pytonprint(infiniteSumCalculator(int(input())))# remember: sometimes u can just prematurely optimize things# very well but it makes very strange chewgum code. Even me# cannot fully understand what is happenings in this file.
Test details
Test 1
Group: 1
Verdict: ACCEPTED
input |
---|
1000 582 214 723 273 ... |
correct output |
---|
0 1 7 7 6 ... |
user output |
---|
0 1 7 7 6 ... Truncated |
Test 2
Group: 2
Verdict: ACCEPTED
input |
---|
1000 615664 916441 627600 279508 ... |
correct output |
---|
1 2 3 2 2 ... |
user output |
---|
1 2 3 2 2 ... Truncated |
Test 3
Group: 3
Verdict: ACCEPTED
input |
---|
1000 672274832941907421 260504693279721732 646999966092970935 100853063389774434 ... |
correct output |
---|
7 2 2 0 9 ... |
user output |
---|
7 2 2 0 9 ... Truncated |