(프로그래머스) 문자열의 p와 y 수(C++)

  • by

문자열의 p와 y 수 / Lv.1


문제 설명)

대문자와 소문자가 혼합된 문자열 s가 주어집니다.

s 에 ‘p’ 의 개수와 ‘y’ 의 개수를 비교해 동일한 경우는 True, 다른 경우는 False 를 return 하는 solution 를 완성해 주세요. ‘p’, ‘y’ 어느 쪽도 없는 경우는 항상 True 를 돌려줍니다.

그러나 숫자를 비교하면 대소문자를 구분하지 않습니다.

예를 들어 s가 ‘pPoooyY’이면 true를 반환하고 ‘Pyy’이면 false를 반환합니다.

제한사항)

  • 문자열 s 길이: 50 이하의 자연수
  • 문자열 s 는 알파벳으로만 구성됩니다.

입출력 예)


입출력 예 설명)

입출력 예 #1
‘p’ 의 개수 2 개, ‘y’ 의 개수 2 개로 동일하므로 true 를 return 합니다.

입출력 예 #2
‘p’ 의 개수 1 개, ‘y’ 의 개수 2 개로 다르므로 false 를 return 합니다.

풀)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <문자열>
#include <algorithm>
using 네임스페이스 std;
bool 솔루션 (문자열 s)
{
bool answer = true;
// s 전체를 소문자로 변환
transform(s.begin(), s.(), s.begin(), ::tolower);
// p와 y의 카운트
int p = 0y = 0;
for(int i = 0;i < s.length(); i++)
{
if (s(i) == ‘p’) p++;
else if (s(i) == “y”)y++;
}
if (p == y) answer = true;
else answer = false;
return answer;
}
cs

출처: https://school.programmers.co.kr/learn/courses/30/lessons/12916

프로그래머스

코드 중심 개발자 채용. 스택 기반 포지션 매칭 프로그래머스 개발자를 위한 커스텀 프로파일을 등록하고 나와 기술의 궁합이 잘 맞는 기업을 매칭합니다.

programmers.co.kr