CSES - Putka Open 2015 – 1/6 - Results
Submission details
Task:Aita
Sender:
Submission time:2015-07-20 01:05:38 +0300
Language:Python2
Status:READY
Result:17
Feedback
groupverdictscore
#1ACCEPTED17
#20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.09 s1details
#2ACCEPTED0.07 s1details
#3ACCEPTED0.08 s1details
#4ACCEPTED0.09 s1details
#5ACCEPTED0.08 s1details
#6--2details
#7--2details
#8--2details
#9--2details
#10ACCEPTED0.08 s2details
#11--3details
#12--3details
#13--3details
#14--3details
#15--3details

Code

# Algoritmi on vaan vaarin ajateltu, ei auta mikaan ;)
# taysin uusi yritys 2, aika loppuuu..i..
a, b = [int(x) for x in raw_input().split(" ")]
def aita(n, k, left):
QAQ=False
lista = []
for i in range(n,0,-1):
lista.append(int(i))
puu_lista = []
puu_lista.append(int(lista[0]))
lista.remove(lista[0])
pituus=len(lista)
puulistan_pituus=1
#left = False
goboth=False
last_number_left = n
last_number_right = n
try_other_side=False
while(lista):
found=False
notfound=False
ko=int(k)
if left==True:
while found==False and notfound==False:
if ko>pituus:
QAQ=True
notfound=True
if int(last_number_left-ko) in lista:
found=True
last_number_left=lista[lista.index(last_number_left-ko)]
lista.remove(last_number_left)
puu_lista.append(last_number_left)
QAQ=False
try_other_side=False
elif int(last_number_left+ko) in lista:
found=True
last_number_left=lista[lista.index(last_number_left+ko)]
lista.remove(last_number_left)
puu_lista.append(last_number_left)
QAQ=False
try_other_side=False
ko=ko+1
else:
while found==False and notfound==False:
if int(last_number_right-ko) in lista:
found=True
last_number_right=lista[lista.index(last_number_right-ko)]
lista.remove(last_number_right)
puu_lista.insert(0,last_number_right)
QAQ=False
try_other_side=False
elif int(last_number_right+ko) in lista:
found=True
last_number_right=lista[lista.index(last_number_right+ko)]
lista.remove(last_number_right)
puu_lista.insert(0,last_number_right)
QAQ=False
try_other_side=False
if ko>pituus:
QAQ=True
notfound=True
ko=ko+1
left=not left #negate
if QAQ == True and try_other_side == False:
try_other_side=True
elif QAQ == True and try_other_side == True:
# no solution
break
if QAQ==True:
print "QAQ"
else:
str_lista = "";
for item in puu_lista:
str_lista = str_lista + str(item) + " "
print str_lista
aita(a, b, False)

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
2 2

correct output
QAQ

user output
QAQ

Test 2

Group: 1

Verdict: ACCEPTED

input
3 2

correct output
QAQ

user output
QAQ

Test 3

Group: 1

Verdict: ACCEPTED

input
4 2

correct output
3 1 4 2 

user output
2 4 1 3 

Test 4

Group: 1

Verdict: ACCEPTED

input
7 4

correct output
QAQ

user output
QAQ

Test 5

Group: 1

Verdict: ACCEPTED

input
8 4

correct output
5 1 6 2 7 3 8 4 

user output
4 8 3 7 2 6 1 5 

Test 6

Group: 2

Verdict:

input
80476 2

correct output
40239 1 40240 2 40241 3 40242 ...

user output
(empty)

Test 7

Group: 2

Verdict:

input
68652 2

correct output
34327 1 34328 2 34329 3 34330 ...

user output
(empty)

Test 8

Group: 2

Verdict:

input
62735 2

correct output
31368 1 31369 2 31370 3 31371 ...

user output
(empty)

Test 9

Group: 2

Verdict:

input
71954 2

correct output
35978 1 35979 2 35980 3 35981 ...

user output
(empty)

Test 10

Group: 2

Verdict: ACCEPTED

input
4 2

correct output
3 1 4 2 

user output
2 4 1 3 

Test 11

Group: 3

Verdict:

input
89814 3

correct output
44908 1 44909 2 44910 3 44911 ...

user output
(empty)

Test 12

Group: 3

Verdict:

input
91140 5

correct output
45571 1 45572 2 45573 3 45574 ...

user output
(empty)

Test 13

Group: 3

Verdict:

input
66703 16675

correct output
33352 1 33353 2 33354 3 33355 ...

user output
(empty)

Test 14

Group: 3

Verdict:

input
66666 33333

correct output
33334 1 33335 2 33336 3 33337 ...

user output
(empty)

Test 15

Group: 3

Verdict:

input
66666 33334

correct output
QAQ

user output
(empty)