結果
| 問題 | No.1818 6 Operations | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2022-01-22 18:38:11 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 416 ms / 2,500 ms | 
| コード長 | 635 bytes | 
| コンパイル時間 | 206 ms | 
| コンパイル使用メモリ | 82,724 KB | 
| 実行使用メモリ | 180,308 KB | 
| 最終ジャッジ日時 | 2024-11-27 18:16:23 | 
| 合計ジャッジ時間 | 8,908 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 30 | 
ソースコード
n,m = map(int,input().split())
A = list(map(int,input().split()))
B = list(map(int,input().split()))
lA = []
lB = []
for a in A:
    lA.append(0)
    for i in range(a):
        lA.append(1)
for b in B:
    lB.append(0)
    for i in range(b):
        lB.append(1)
dp = [[0]*(len(lB)+1) for i in range(len(lA)+1)]
for i in range(len(lA)+1):
    dp[i][0] = i
for i in range(len(lB)+1):
    dp[0][i] = i
for i in range(1,len(lA)+1):
    for j in range(1,len(lB)+1):
        if lA[i-1] == lB[j-1]:
            dp[i][j] = dp[i-1][j-1]
        else:
            dp[i][j] = min(dp[i-1][j-1]+1,dp[i][j-1]+1,dp[i-1][j]+1)
print(dp[-1][-1])
            
            
            
        