Problem:
MathJax.Hub.Config({
tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}
});

B: ハミング距離 / Hamming Distance

問題文

Leading-zeros を含めた桁数が $N$ の，符号なし $2$ 進数表記された整数 $X$ がある．
$X$ とのハミング距離が $D$ となる $N$ 桁で $2$ 進数表記できる非負整数のうち，
値が最大のものを出力せよ．

$2$ 進数表記された整数間のハミング距離とは，
$2$ つの数において値が異なる桁の数である．例えば $000$ と $110$ のハミング距離は $2$ である．

入力

$N$

$X$

$D$

制約

$1 \leq N \leq 1000$

$0 \leq D \leq N$

入力は全て非負整数である

出力

答えの整数を符号なし $2$ 進数表記で $1$ 行に出力せよ．

サンプル

サンプル入力1

5
00001
3

サンプル出力1

11101

サンプル入力2

7
0110100
4

サンプル出力2

1111111

サンプル入力3

18
110001001110100100
6

サンプル出力3

111111111111100100

サンプル入力4

3
000
0

サンプル出力4

000

Solution in Python3 (judge verdict: Wrong Answer)

n = int(input())
bits_raw = input()
bits = [int(bits_raw[i]) for i in range(n)]
m = int(input())
j = 0
for i in range(m):
    while(True):
        if(j == n - 1):
            bits[j] = 1 - bits[j]
            break
        if(bits[j] == 0):
            bits[j] = 1
            break
        else:
            j += 1
print(''.join(map(str, bits)))