結果
問題 | No.2732 Similar Permutations |
ユーザー | flygon |
提出日時 | 2024-04-19 23:14:24 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,506 bytes |
コンパイル時間 | 626 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 189,996 KB |
最終ジャッジ日時 | 2024-10-11 17:41:27 |
合計ジャッジ時間 | 32,450 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 46 ms
54,528 KB |
testcase_01 | WA | - |
testcase_02 | WA | - |
testcase_03 | WA | - |
testcase_04 | WA | - |
testcase_05 | RE | - |
testcase_06 | WA | - |
testcase_07 | WA | - |
testcase_08 | WA | - |
testcase_09 | WA | - |
testcase_10 | WA | - |
testcase_11 | WA | - |
testcase_12 | AC | 216 ms
117,188 KB |
testcase_13 | AC | 213 ms
116,944 KB |
testcase_14 | AC | 210 ms
117,068 KB |
testcase_15 | AC | 215 ms
116,976 KB |
testcase_16 | AC | 179 ms
112,128 KB |
testcase_17 | AC | 193 ms
112,512 KB |
testcase_18 | AC | 198 ms
115,712 KB |
testcase_19 | AC | 217 ms
116,696 KB |
testcase_20 | AC | 213 ms
115,964 KB |
testcase_21 | AC | 214 ms
108,432 KB |
testcase_22 | AC | 158 ms
104,448 KB |
testcase_23 | AC | 201 ms
106,444 KB |
testcase_24 | AC | 156 ms
102,784 KB |
testcase_25 | AC | 197 ms
105,168 KB |
testcase_26 | AC | 181 ms
104,960 KB |
testcase_27 | AC | 189 ms
105,024 KB |
testcase_28 | AC | 161 ms
102,016 KB |
testcase_29 | AC | 180 ms
106,368 KB |
testcase_30 | AC | 171 ms
102,528 KB |
testcase_31 | AC | 177 ms
107,008 KB |
testcase_32 | AC | 175 ms
104,064 KB |
testcase_33 | AC | 181 ms
106,752 KB |
testcase_34 | AC | 149 ms
101,120 KB |
testcase_35 | AC | 175 ms
107,008 KB |
testcase_36 | AC | 172 ms
104,320 KB |
testcase_37 | AC | 173 ms
106,624 KB |
testcase_38 | AC | 166 ms
105,344 KB |
testcase_39 | AC | 175 ms
107,136 KB |
testcase_40 | AC | 161 ms
105,216 KB |
testcase_41 | AC | 177 ms
106,624 KB |
testcase_42 | AC | 147 ms
103,552 KB |
testcase_43 | AC | 171 ms
107,008 KB |
testcase_44 | AC | 133 ms
99,584 KB |
testcase_45 | AC | 173 ms
107,392 KB |
testcase_46 | AC | 162 ms
104,832 KB |
testcase_47 | AC | 170 ms
107,136 KB |
testcase_48 | AC | 143 ms
101,888 KB |
testcase_49 | AC | 178 ms
107,264 KB |
testcase_50 | AC | 138 ms
101,632 KB |
testcase_51 | AC | 168 ms
107,136 KB |
testcase_52 | AC | 153 ms
105,728 KB |
testcase_53 | AC | 237 ms
124,612 KB |
testcase_54 | AC | 222 ms
124,740 KB |
testcase_55 | AC | 224 ms
125,256 KB |
testcase_56 | AC | 224 ms
124,868 KB |
testcase_57 | AC | 164 ms
110,080 KB |
testcase_58 | AC | 185 ms
114,304 KB |
testcase_59 | AC | 176 ms
114,688 KB |
testcase_60 | AC | 168 ms
109,972 KB |
testcase_61 | AC | 163 ms
109,312 KB |
testcase_62 | AC | 203 ms
119,808 KB |
testcase_63 | WA | - |
testcase_64 | WA | - |
testcase_65 | WA | - |
testcase_66 | WA | - |
testcase_67 | WA | - |
testcase_68 | WA | - |
testcase_69 | WA | - |
testcase_70 | WA | - |
testcase_71 | WA | - |
testcase_72 | WA | - |
testcase_73 | WA | - |
testcase_74 | WA | - |
testcase_75 | WA | - |
testcase_76 | WA | - |
testcase_77 | WA | - |
testcase_78 | WA | - |
testcase_79 | WA | - |
testcase_80 | WA | - |
testcase_81 | WA | - |
testcase_82 | WA | - |
testcase_83 | WA | - |
testcase_84 | WA | - |
testcase_85 | WA | - |
testcase_86 | WA | - |
testcase_87 | WA | - |
testcase_88 | WA | - |
testcase_89 | WA | - |
testcase_90 | WA | - |
testcase_91 | WA | - |
testcase_92 | WA | - |
testcase_93 | WA | - |
testcase_94 | WA | - |
testcase_95 | WA | - |
testcase_96 | WA | - |
testcase_97 | WA | - |
testcase_98 | WA | - |
testcase_99 | WA | - |
testcase_100 | WA | - |
testcase_101 | WA | - |
testcase_102 | WA | - |
ソースコード
import sys sys.setrecursionlimit(5*10**5) input = sys.stdin.readline from collections import defaultdict, deque, Counter from heapq import heappop, heappush from bisect import bisect_left, bisect_right from math import gcd n = int(input()) a = list(map(int,input().split())) if len(set(a)) != n: x = [[] for i in range(max(a)+10)] for i in range(n): x[a[i]].append(i) ok = 1 p1 = list(range(1, n+1)) p2 = list(range(1, n+1)) for i in range(max(a)+10): if len(x[i]) >= 2: s,t = x[i][0], x[i][1] p2[t], p2[s] = p2[s], p2[t] break else: ok = 0 p1 = [0]*(n) p2 = [0]*(n) s = set([i for i in range(1, n+1)]) mx = max(a) sa = set(a) pos = [-1]*(mx+1) for i in range(n): pos[a[i]] = i for xi in range(n): x = a[xi] for yi in range(i, n): y = a[yi] d = y-x if y + d > mx:break if 1 + 2 * d > n:break if y+d in sa: zi = pos[y+2*d] p1[xi], p1[yi], p1[zi] = 1+d, 1+d+d, 1 p2[xi], p2[yi], p2[zi] = 1+d+d, 1, 1+d ok = 1 s.discard(1) s.discard(1+d) s.discard(1+d+d) break if ok:break s = list(s) for i in range(n): if p1[i]: continue num = s.pop() p1[i] = num p2[i] = num if ok: print(*p1) print(*p2) else: print(-1)