| Task: | Pair sort |
| Sender: | aalto25d_007 |
| Submission time: | 2025-09-24 17:02:17 +0300 |
| Language: | Python3 (PyPy3) |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.04 s | details |
| #2 | ACCEPTED | 0.04 s | details |
| #3 | WRONG ANSWER | 0.04 s | details |
| #4 | WRONG ANSWER | 0.04 s | details |
| #5 | WRONG ANSWER | 0.04 s | details |
| #6 | WRONG ANSWER | 0.04 s | details |
| #7 | WRONG ANSWER | 0.04 s | details |
| #8 | WRONG ANSWER | 0.04 s | details |
| #9 | WRONG ANSWER | 0.06 s | details |
| #10 | WRONG ANSWER | 0.06 s | details |
| #11 | WRONG ANSWER | 0.07 s | details |
| #12 | WRONG ANSWER | 0.07 s | details |
| #13 | WRONG ANSWER | 0.11 s | details |
| #14 | WRONG ANSWER | 0.11 s | details |
Code
n = int(input())
numbers = [int(x) for x in input().split()]
swaps = []
index = 0
def binary_search(array, x):
low = 0
high = len(array)-1
while low <= high:
mid = (high + low) // 2
if array[mid] < x:
low = mid + 1
elif array[mid] > x:
high = mid - 1
else:
return mid
return -1
while index < 2*n:
if numbers[index] != numbers[index+1]:
j = binary_search(numbers[index+2:], numbers[index]) + index + 2
numbers[index+1], numbers[j] = numbers[j], numbers[index+1]
swaps.append([index+1, j])
index += 2
print(len(swaps))
for swap in swaps:
print(swap[0]+1, swap[1]+1)Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 5 3 2 4 5 1 3 2 1 4 5 |
| correct output |
|---|
| 3 2 6 4 9 6 8 |
| user output |
|---|
| 3 2 6 4 9 6 8 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 5 3 2 4 5 1 3 2 1 4 5 |
| correct output |
|---|
| 3 2 6 4 9 6 8 |
| user output |
|---|
| 3 2 6 4 9 6 8 |
Test 3
Verdict: WRONG ANSWER
| input |
|---|
| 10 3 6 6 8 8 9 9 1 4 5 2 4 10 2 1... |
| correct output |
|---|
| 9 2 17 4 17 6 17 8 17 ... |
| user output |
|---|
| 10 2 2 4 4 6 6 8 8 ... |
Test 4
Verdict: WRONG ANSWER
| input |
|---|
| 10 3 6 6 8 8 9 9 1 4 5 2 4 10 2 1... |
| correct output |
|---|
| 9 2 17 4 17 6 17 8 17 ... |
| user output |
|---|
| 10 2 2 4 4 6 6 8 8 ... |
Test 5
Verdict: WRONG ANSWER
| input |
|---|
| 50 47 26 6 35 13 18 9 19 14 50 34... |
| correct output |
|---|
| 48 2 87 4 78 6 71 8 55 ... |
| user output |
|---|
| 50 2 2 4 4 6 6 8 8 ... Truncated |
Test 6
Verdict: WRONG ANSWER
| input |
|---|
| 50 47 26 6 35 13 18 9 19 14 50 34... |
| correct output |
|---|
| 48 2 87 4 78 6 71 8 55 ... |
| user output |
|---|
| 50 2 2 4 4 6 6 8 8 ... Truncated |
Test 7
Verdict: WRONG ANSWER
| input |
|---|
| 100 56 26 6 35 60 72 9 55 83 51 58... |
| correct output |
|---|
| 97 2 77 4 108 6 141 8 55 ... |
| user output |
|---|
| 99 2 2 4 4 6 6 8 8 ... Truncated |
Test 8
Verdict: WRONG ANSWER
| input |
|---|
| 100 56 26 6 35 60 72 9 55 83 51 58... |
| correct output |
|---|
| 97 2 77 4 108 6 141 8 55 ... |
| user output |
|---|
| 99 2 2 4 4 6 6 8 8 ... Truncated |
Test 9
Verdict: WRONG ANSWER
| input |
|---|
| 500 56 146 351 35 281 235 354 449 ... |
| correct output |
|---|
| 497 2 758 4 820 6 125 8 243 ... |
| user output |
|---|
| 500 2 2 4 4 6 6 8 8 ... Truncated |
Test 10
Verdict: WRONG ANSWER
| input |
|---|
| 500 56 146 351 35 281 235 354 449 ... |
| correct output |
|---|
| 497 2 758 4 820 6 125 8 243 ... |
| user output |
|---|
| 500 2 2 4 4 6 6 8 8 ... Truncated |
Test 11
Verdict: WRONG ANSWER
| input |
|---|
| 1000 603 596 351 885 530 235 354 56... |
| correct output |
|---|
| 993 2 256 4 1534 6 816 8 1057 ... |
| user output |
|---|
| 1000 2 2 4 4 6 6 8 8 ... Truncated |
Test 12
Verdict: WRONG ANSWER
| input |
|---|
| 1000 603 596 351 885 530 235 354 56... |
| correct output |
|---|
| 993 2 256 4 1534 6 816 8 1057 ... |
| user output |
|---|
| 1000 2 2 4 4 6 6 8 8 ... Truncated |
Test 13
Verdict: WRONG ANSWER
| input |
|---|
| 5000 1594 596 1797 3776 1201 235 35... |
| correct output |
|---|
| 4993 2 1548 4 9062 6 6397 8 8296 ... |
| user output |
|---|
| 4999 2 2 4 4 6 6 8 8 ... Truncated |
Test 14
Verdict: WRONG ANSWER
| input |
|---|
| 5000 1594 596 1797 3776 1201 235 35... |
| correct output |
|---|
| 4993 2 1548 4 9062 6 6397 8 8296 ... |
| user output |
|---|
| 4999 2 2 4 4 6 6 8 8 ... Truncated |
