CSES - Datatähti 2017 alku - Results
Submission details
Task:Bittijono
Sender:inkeri
Submission time:2016-10-04 19:45:07 +0300
Language:Python2
Status:READY
Result:29
Feedback
groupverdictscore
#1ACCEPTED10
#2ACCEPTED19
#30
Test results
testverdicttimegroup
#1ACCEPTED0.05 s1details
#2ACCEPTED1.32 s2details
#3--3details

Code

import math, random, sys
global bitit
bitit = {}
bitit[1] = 0
bitit[2] = 1
def getBitti(luku):
if luku not in bitit:
# try:
length = int(math.pow(2, math.ceil(math.log(luku, 2))))
luku -= length/4
if (luku > length/2):
luku -= length/2
bitti = getBitti(luku)
bitit[luku] = bitti
return getBitti(luku)
# except ValueError:
# print luku
# sys.exit()
return bitit[luku]
def main():
import math
amount = int(input(""))
for i in xrange(amount):
print getBitti(int(input("")))
# def test(maara):
# lista = [i + 1 for i in range(maara)]
# #random.shuffle(lista)
#
# for i in lista:
# a = ""
# a += str(i) + ": "
# print a + str(getBitti(i))
main()
#test(100000)

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
100
62
9
12
73
...

correct output
1
1
1
0
1
...

user output
1
1
1
0
1
...

Test 2

Group: 2

Verdict: ACCEPTED

input
100000
565433
141881
120108
825392
...

correct output
1
1
0
0
1
...

user output
1
1
0
0
1
...

Test 3

Group: 3

Verdict:

input
100000
374768524402011755
937067109466254318
389256426086302899
932585725667010169
...

correct output
0
1
1
1
1
...

user output
(empty)