結果
問題 |
No.927 Second Permutation
|
ユーザー |
|
提出日時 | 2020-04-14 16:52:38 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 99 ms / 2,000 ms |
コード長 | 922 bytes |
コンパイル時間 | 402 ms |
コンパイル使用メモリ | 12,800 KB |
実行使用メモリ | 11,136 KB |
最終ジャッジ日時 | 2024-10-01 17:14:50 |
合計ジャッジ時間 | 3,220 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 27 |
ソースコード
MOD = 10 ** 9 + 7 INF = 10 ** 10 import sys sys.setrecursionlimit(100000000) dy = (-1,0,1,0) dx = (0,1,0,-1) def main(): x = input() cnt = [0] * 10 num = '0123456789' for i in x: for j in range(10): if num[j] == i: cnt[j] += 1 break a,b = -1,-1 for i in range(10): if cnt[i] > 0: if a < 0: a = i else: b = i break if b < 0: print(-1) return ans = [] for i in range(10): if i == a: ans.append(num[b] + num[a] * (cnt[a] - 1)) elif i == b: ans.append(num[b] * (cnt[b] - 1) + num[a]) else: ans.append(num[i] * cnt[i]) answer = ''.join(ans[::-1]) if answer[0] == '0': print(-1) return print(answer) if __name__ =='__main__': main()