[c++ 백준] (5704번) 팬그램

728x90

문제

팬그램은 알파벳의 모든 글자들을 사용해서 만든 문장이다. "the quick brown fox jumps over a lazy dog"과 "jackdaws loves my big sphinx of quartz"은 팬그램이다. 문장이 주어졌을 때, 팬그램인지 아닌지를 알아내는 프로그램을 작성하시오.

입력

입력은 여러 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 많아야 200글자로 이루어져 있는 문장이다. 단어는 공백 하나로 구분되어 있다. 또, 단어는 알파벳 소문자로만 이루어져 있다. 입력의 마지막 줄에는 별표(*)가 하나 주어진다.

#include <iostream>
#include <string>
#define endl "\n"
using namespace std;

bool check[26];

void Answer()
{
	string alpha;
	while (getline(cin, alpha))
	{
		if (alpha.compare("*") == 0)
		{
			break;
		}
		else
		{
			for (int i = 0; i < 26; i++)
			{
				check[i] = false;
			}
			for (int i = 0; i < alpha.size(); i++)
			{
				check[alpha[i] - 'a'] = true;
			}
			int i;
			for (i = 0; i < 26; i++)
			{
				if (!check[i])
				{
					cout << 'N' << endl;
					break;
				}
			}
			if (i == 26)
				cout << 'Y' << endl;
		}

	}
}

int main()
{
	ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
	Answer();
}

728x90