解法
シミュレーションというか,貪欲法.
気を付けることは, 無地のシャツを買う必要はないので,足りないときは印刷されてる方だけ買う. 洗濯したら枚数を回復するので,今持っているシャツの枚数をそれぞれ記録しておく.
最後に,印刷したシャツの枚数が,買った枚数の答え.
使っている記号,マクロ等 "https://ecsmtlir.hatenablog.com/entry/2022/12/23/131925"
int main() {
ll n,m;
cin >> n >> m;
string s; cin >> s;
ll x_ma = m, y_ma = 0;
ll x = m, y = 0;
rep(i,n){
if(s[i] == '0'){
x = x_ma;
y = y_ma;
}else if(s[i] == '1'){
if(x > 0) x--;
else if(y > 0) y--;
else {
y_ma++;
}
}else if(s[i] == '2'){
if(y > 0) y--;
else {
y_ma++;
}
}
}
cout << y_ma << endl;
return 0;
}