M - 01 Substrings
ผักชี
5
s
1024
MB
650
点
問題文
各文字が 0
と 1
からなる長さ $N$ の文字列 $S$ と整数 $K$ が与えられます。
この文字列に対して以下の操作を行うことを考えます。
- $S$ を $N-K$ 個の部分文字列に分割する。この分割は長さ $1$ の文字列が $N-2K$ 個、長さ $2$ の文字列が $K$ 個となるように分割する必要がある。その後、分割した部分文字列を並び替えて連結し、新しく文字列を作る。
操作によって作られる文字列のうち辞書順最小のものを求めてください。
$T$ 個のテストケースが与えられるので、それぞれについて答えを求めてください。
制約
- $1\le T$
- $2\le N$
- $\displaystyle 0\le K\le \frac N2$
- $S$ は
0
および1
からなる長さ $N$ の文字列 - 全てのテストケースに対する $N$ の総和は $5\times 10^5$ 以下
入力
入力は以下の形式で与えられる。
$T$
$\text{case}_1$
$\text{case}_2$
$\vdots$
$\text{case}_T$
各テストケース $\text{case}_i$ は以下の形式で与えられる。
$N$ $K$
$S$
出力
$T$ 行出力せよ。
$i$ 行目には、 $\text{case}_i$ に対する答えを出力せよ。
入力例 1
3
5 2
10110
5 1
10110
8 3
11010010
出力例 1
01011
00111
00001111