結果
問題 |
No.2018 X-Y-X
|
ユーザー |
![]() |
提出日時 | 2022-05-04 00:31:26 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,040 bytes |
コンパイル時間 | 156 ms |
コンパイル使用メモリ | 82,396 KB |
実行使用メモリ | 79,792 KB |
最終ジャッジ日時 | 2024-07-03 19:20:12 |
合計ジャッジ時間 | 4,439 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 7 WA * 24 |
ソースコード
# 雑提出(通らない) N = int(input()) S = [ord(a) - 65 for a in input()] T = [ord(a) - 65 for a in input()] inf = 10 ** 9 null, m, lm, rm, lrm, mlrm, rmlrm, lmlrm,lrmlrm = 0, inf, inf, inf, inf, inf, inf, inf, inf for i in range(1, N - 1): nnull, nm, nlm, nrm, nlrm, nmlrm, nrmlrm, nlmlrm, nlrmlrm = inf, inf, inf, inf, inf, inf, inf, inf, inf if S[i] == T[i]: nnull = min(null, m, lm) if S[i-1] == S[i+1]: nmlrm = min(rm, lrm, rmlrm, lrmlrm) + 2 nlrmlrm = min(mlrm, lmlrm) + 2 else: nrmlrm = min(rm, lrm, rmlrm, lrmlrm) + 2 nlmlrm = min(mlrm, lmlrm) + 2 else: if S[i-1] == S[i+1]: nm = min(null, rm, lrm) + 1 nlrm = min(m, lm, mlrm, lmlrm) + 1 else: nlm = min(m, lm, mlrm, lmlrm) + 1 nrm = min(null, rm, lrm) + 1 null, m, lm, rm, lrm, mlrm, rmlrm, lmlrm, lrmlrm = nnull, nm, nlm, nrm, nlrm, nmlrm, nrmlrm, nlmlrm, nlrmlrm ans = min((null, m, lm)) print(ans if ans < inf else -1)