結果
問題 |
No.2665 Minimize Inversions of Deque
|
ユーザー |
|
提出日時 | 2024-03-08 22:05:49 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,102 bytes |
コンパイル時間 | 304 ms |
コンパイル使用メモリ | 82,596 KB |
実行使用メモリ | 124,580 KB |
最終ジャッジ日時 | 2024-09-29 19:41:24 |
合計ジャッジ時間 | 11,564 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 30 TLE * 1 -- * 9 |
ソースコード
from collections import deque def solve(): n = int(input()) p = list(map(int, input().split())) q = deque([p[0]]) inversions = 0 for i in range(1, n): left = q[0] right = q[-1] if p[i] < left and p[i] < right: if left < right: q.appendleft(p[i]) inversions += i - len([x for x in q if x < p[i]]) else: q.append(p[i]) inversions += len([x for x in q if x > p[i]]) elif p[i] > left and p[i] > right: if left > right: q.appendleft(p[i]) inversions += i - len([x for x in q if x < p[i]]) else: q.append(p[i]) inversions += len([x for x in q if x > p[i]]) elif p[i] < left: q.appendleft(p[i]) inversions += i - len([x for x in q if x < p[i]]) else: q.append(p[i]) inversions += len([x for x in q if x > p[i]]) print(inversions) print(' '.join(map(str, q))) T = int(input()) for _ in range(T): solve()