Task: | Järjestys |
Sender: | joshimasta |
Submission time: | 2016-10-07 16:23:49 +0300 |
Language: | Python3 |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | WRONG ANSWER | 0 |
#2 | WRONG ANSWER | 0 |
#3 | WRONG ANSWER | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | WRONG ANSWER | 0.06 s | 1 | details |
#2 | WRONG ANSWER | 0.06 s | 2 | details |
#3 | WRONG ANSWER | 0.19 s | 3 | details |
Code
import random input() x = list(map(int, input().split())) r = "" length = 0 def getIndex(l,i): c = 0 w = 0 while True: if l[w] == i: return c elif l[w] < i: c += 1 w += 1 """ i = int(len(x)) b = True while i != 1: #index = x.index(i) index = getIndex(x,i) if index == i - 1: pass elif index == 0: length += 2 r += (str(i)+" "+str(i-1)+" ") else: length += 4 r += (str(index + 1)+" "+str(i)+" "+str(i-1)+" "+str(index)+" ") #x.pop(index) i -= 1 r = r[:-1] """ trues = [False] * len(x) index = 1 lastCorrect = 0 firstOfCycle = 1 while index < len(x): #x[index] -> x[x[index]] if index == 0: length += 2 r += (str(x[index-1])+" "+str(x[index-1]-1)+" ") else: length += 4 r += (str(index-1+firstOfCycle)+" "+str(x[index-1])+" "+str(x[index-1]-1)+" "+str(index-2+firstOfCycle)+" ") firstOfCycle = 0 index = x[index-1] trues[index - 1] = True if index == lastCorrect + 1: while trues[index - 1] and index < len(x): index += 1 lastCorrect += 1 firstOfCycle = 1 print(length) print(r)
Test details
Test 1
Group: 1
Verdict: WRONG ANSWER
input |
---|
10 9 3 4 7 6 5 10 2 8 1 |
correct output |
---|
32 10 10 9 10 9 8 7 9 4 2 1 4 5 2... |
user output |
---|
28 1 9 8 0 8 8 7 7 7 2 1 6 1 3 2 ... |
Test 2
Group: 2
Verdict: WRONG ANSWER
input |
---|
1000 650 716 982 41 133 1000 876 92... |
correct output |
---|
3984 207 207 206 207 128 127 126 12... |
user output |
---|
3340 1 650 649 0 649 328 327 648 32... |
Test 3
Group: 3
Verdict: WRONG ANSWER
input |
---|
100000 94703 47808 62366 31885 7091 8... |
correct output |
---|
399956 98676 98676 98675 98676 62994 ... |
user output |
---|
132644 1 94703 94702 0 94702 71577 71... |