# 588 라운드 Codeforces (사업부. 2) B. 아냐 최소화 (构造)

링크 :

https://codeforces.com/contest/1230/problem/B

질문의 의미 :

아냐는 S. 그것의 진수 표현은 길이 n을 가지고 있으며, 어떤 선행 0을 포함하지 않는 큰 정수가 있습니다. 아냐 그녀는 선행 제로 포함되지 않습니다 아직 S와 같은 방법으로 그것을하고 싶어 S. 대부분의 K 자리에서 변경할 수 있으며이 가능한 최소 수 있습니다. 어떤 정수 아냐는 마무리 것인가?

아이디어 :

시뮬레이션 구성 할 수있다.

코드 :

#include <bits/stdc++.h>
using namespace std;

const int MAXN = 2e5+10;
char s[MAXN];
int n, k;

int main()
{
    cin >> n >> k;
    cin >> s;
    int p = 0;
    while (k > 0 && p < n)
    {
        if (p > 0 || p == n-1)
        {
            if (s[p] != '0')
            {
                s[p] = '0';
                k--;
            }
        }
        else
        {
            if (s[p] != '1')
            {
                s[p] = '1';
                k--;
            }
        }
        p++;
    }
    cout << s << endl;

    return 0;
}

추천

출처www.cnblogs.com/YDDDD/p/11621408.html