Problem Solving/BOJ

[백준 / BOJ] C++ 27964 콰트로치즈피자

nageune 2023. 4. 18. 12:29
728x90
반응형

27964번: 콰트로치즈피자

 

문제

https://www.acmicpc.net/problem/27964

 

27964번: 콰트로치즈피자

치즈와 피자에 환장하는 비행씨는 매일같이 치즈피자를 사 먹다가 지갑이 거덜 나고 말았다. 만들어 먹는 것이 사 먹는 것보다 싸다는 것을 안 비행씨는 여러 가지 토핑을 가져와서 직접 피자를

www.acmicpc.net

 

 

풀이

서로 다른 치즈가 4종류 이상 존재하느냐가 중요하다. Cheese의 크기는 6이므로 문자열 크기가 5 이하인 문자열은 예외처리를 해줘야 한다. 그리고 나머지 문자열에 대해 마지막 글자 6글자가 Cheese인지 검사하면 된다. 중복 처리를 위해 map 자료형을 사용한다. map의 크기가 4 이상이면 yummy를 출력하고 아니면 sad를 출력한다.

 

 

코드

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

int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int n;
  cin >> n;
  map<string, int> M;
  while (n--) {
    string s;
    cin >> s;
    if (s.size() >= 6 && s.substr(s.size() - 6, 6) == "Cheese")
      if (M.find(s) == M.end())
        M[s] = 1;
  }
  if (M.size() >= 4)
    cout << "yummy";
  else
    cout << "sad";
  return 0;
}

 

728x90
반응형