포스트

[C++] 백준 1032번: 명령 프롬프트

문제

난이도 : 브론즈 1 백준 1032번 : 명령 프롬프트

코드

#include <bits/stdc++.h>

using namespace std;

int N;
vector<string> v;

int main()
{
    cin >> N;

    while (N--)
    {
        string input;
        cin >> input;
        v.push_back(input);
    }

    string answer = "";

    for (int i = 0; i < v[0].size(); i++)
    {
        bool flag = false;

        for (int j = 1; j < v.size(); j++)
        {
            if (v[j - 1][i] != v[j][i])
            {
                flag = true;
                break;
            }
        }

        if (flag)
        {
            answer += "?";
        }
        else
        {
            answer += v[0][i];
        }
    }

    cout << answer;

    return 0;
}


설명

간단한 구현 문제. 입력 개수가 매우 적고 문자열 길이도 적어 이중 반복문으로 해결했다.
문자 길이가 모두 같으니 문자열 모두 첫번째 글자부터 비교해가며 하나라도 다르다면 ?로 바꾸는 과정을 겪는다. 이중 반복문이면 못할게 없다!

결과

image

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.