
풀이과정
선수의 수(N)를 입력받고, 선수들의 이름을 vector<string>형 변수(v)에 입력받는다.
문자 a-z를 아스키코드를 저장할 수 있는 배열(iArr)을 만들고 0으로 초기화 한다.
저장된 선수이름의 첫번째 문자를 int형으로 형변환한 값을 인자로 갖는 변수에 +1을 한다.
배열에 저장된 값이 5이상인 배열의 index를 문자로 형변환하여 출력한다.
코드
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
int iArr[200] = { 0, };
int iInputSize = 0;
bool bIsGiveUp = true;
vector<string> v;
cin >> iInputSize;
v.reserve(iInputSize);
for (int i = 0; i < iInputSize; ++i)
{
string s;
cin >> s;
v.push_back(s);
}
vector<string>::iterator iter = v.begin();
for (iter; iter != v.end(); ++iter)
{
iArr[(int)(*iter)[0]] += 1;
}
for (int i = 'a'; i < 'z'+1; ++i)
{
if (iArr[i] >= 5)
{
cout << (char)i;
bIsGiveUp = false;
}
}
if (bIsGiveUp) cout << "PREDAJA";
}
'알고리즘(C++) > 백준 알고리즘' 카테고리의 다른 글
| [백준] C++ 9012번 : 괄호 (1) | 2019.11.07 |
|---|---|
| [백준] C++ 10828번 : 스택 (0) | 2019.11.07 |
| [백준] C++ 2953번 : 나는 요리사다 (0) | 2019.11.07 |
| [백준] C++ 2798번 : 블랙잭 (0) | 2019.11.07 |
| [백준] C++ 3052번 : 나머지 (0) | 2019.11.07 |