프로그래머스 코딩테스트 연습 - 문자열 내 p와 y의 개수 (Level 1)
PS/Programmers

프로그래머스 코딩테스트 연습 - 문자열 내 p와 y의 개수 (Level 1)

programmers

 

문제

프로그래머스 코딩테스트 연습 - 문자열 내 p와 y의 개수 (Level 1)

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

 

코딩테스트 연습 - 문자열 내 p와 y의 개수

대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를

programmers.co.kr


사용 알고리즘

- 문자열

 

풀이

문자열 내 p와 y의 개수를 세고 비교한다.

 

나의 코드

#include <string>
#include <iostream>
using namespace std;

bool solution(string s)
{
    int cnt=0;
    for(auto i:s) if(i=='p'||i=='P') cnt++;
    for(auto i:s) if(i=='y'||i=='Y') cnt--;
    return (cnt==0);
}

 

남의 코드(좋아요 최다 코드)

#include <string>
#include <iostream>
using namespace std;

bool solution(string s)
{
    int p = 0;
    int y = 0;
    for (int i = 0; i < s.length(); i++) {
        if (s[i] == 'p' || s[i] == 'P')
            p++;
        else if (s[i] == 'y' || s[i] == 'Y')
            y++;
    }
    return p == y;
}

 

728x90