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

Code

import sys
import math
import itertools
from collections import defaultdict

n, k = map(int, sys.stdin.readline().rstrip().split())

if n == 1:
	print n
	sys.exit()
if n == 2:
	if k > 1:
		print "QAQ"
	else:
		print "1 2"
	sys.exit()


res = [-1]*n

start1 = 1
start2 = int(math.ceil(n/2.0)) + 1
#if start2 - 2 < k:
#	print "QAQ"
#	sys.exit()

if n % 2 == 1:
	insertStart1 = True
else:
	insertStart1 = False

for i in xrange(n):
	if insertStart1:
		res[i] = start1
		start1 += 1
	else:
		res[i] = start2
		start2 += 1
	insertStart1 = not insertStart1

mindif = min([abs(res[i] - res[i + 1]) for i in xrange(n - 1)])
if mindif >= k:
	print " ".join(map(str, res))
else:
	print "QAQ"

# 1 4 2 5 3 6
# 2 5 1 4 6 3

# 1 5 2 6 3 7 4

# 1 5 2 6 3 7 4 8
# 5 1 6 2 7 3 8 4







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
3 1 4 2

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
5 1 6 2 7 3 8 4

Test 6

Group: 2

Verdict: ACCEPTED

input
80476 2

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

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

Test 7

Group: 2

Verdict: ACCEPTED

input
68652 2

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

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

Test 8

Group: 2

Verdict: ACCEPTED

input
62735 2

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

user output
1 31369 2 31370 3 31371 4 3137...

Test 9

Group: 2

Verdict: ACCEPTED

input
71954 2

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

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

Test 10

Group: 2

Verdict: ACCEPTED

input
4 2

correct output
3 1 4 2 

user output
3 1 4 2

Test 11

Group: 3

Verdict: ACCEPTED

input
89814 3

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

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

Test 12

Group: 3

Verdict: ACCEPTED

input
91140 5

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

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

Test 13

Group: 3

Verdict: ACCEPTED

input
66703 16675

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

user output
1 33353 2 33354 3 33355 4 3335...

Test 14

Group: 3

Verdict: ACCEPTED

input
66666 33333

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

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

Test 15

Group: 3

Verdict: ACCEPTED

input
66666 33334

correct output
QAQ

user output
QAQ