관리 메뉴

fatalite

민겸 수 - 21314번 백준 본문

코딩 인터뷰/Greedy

민겸 수 - 21314번 백준

fataliteforu 2023. 9. 14. 22:13

문제 

문제 난이도 : 실버 2

문제 태그 : 그리디, 구현


문제 풀이

#include <iostream>
#include <vector>
#include <string>
#include <cmath>
#include <algorithm>

using namespace std;

int main()
{
    //Input
    string InputString;
    cin >> InputString;
    //Find Min
    string q = "";
    string p = "";
    int Mcount = 0;
    for (int i = 0; i < InputString.size(); ++i)
    {
        if (InputString[i] == 'K')
        {
            if (Mcount != 0)
            {
                string Tmp = "";
                Tmp.push_back('1');
                for (int j = 0; j < Mcount - 1; ++j)
                {
                    Tmp.push_back('0');
                }
                q.append(Tmp);
            }
            string Tmp = "";
            Tmp.push_back('5');
            for (int j = 0; j < Mcount; ++j)
            {
                Tmp.push_back('0');
            }
            p.append(Tmp);

            q.push_back('5');
            Mcount = 0;
        }
        else
        {
            Mcount++;
        }
    }
    if (Mcount != 0)
    {
        string Tmp = "";
        string Tmp2 = "";
        Tmp.push_back('1');
        Tmp2.push_back('1');
        for (int j = 0; j < Mcount - 1; ++j)
        {
            Tmp.push_back('1');
            Tmp2.push_back('0');
        }
        q.append(Tmp2);
        p.append(Tmp);
    }
    
    cout << p << "\n";
    cout << q;
    
}

'코딩 인터뷰 > Greedy' 카테고리의 다른 글

잃어 버린 괄호 / 1541번 백준  (0) 2023.09.14