- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 26 | 27 | 28 | 29 | 30 |
Tags
- Firebase
- C++
- 자바
- 공유대학
- android studio
- sql
- 코딩테스트
- 프로그래머스
- 안드로이드 스튜디오
- 동적할당
- 백준
- 로그인
- til
- 정렬
- 알고리즘
- oauth
- 연결리스트
- 파이썬
- python
- Java
- firebase google
- 비주얼 베이직
- 배열
- 구글 로그인
- 컴퓨터공학과
- 안드로이드
- 프로그래밍 입문
- C언어
- 자료구조
Archives
코딩하는 해달이
[level 1] 문자열 내 p와 y의 개수 본문
문제 설명
대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다.
예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다.
제한사항
- 문자열 s의 길이 : 50 이하의 자연수
- 문자열 s는 알파벳으로만 이루어져 있습니다.
문제 이해
p,P와 y,Y의 개수를 세어서 비교한다.
알고리즘
1. 문자열 s를 입력받는다.
2. P와 p의 개수를 센다.
3. Y와 y의 개수를 센다.
4. 만약 두 개의 개수가 같으면 true를 반환한다.
5. 만약 두 개의 개수가 다르면 false를 반환한다.
풀이 코드
#include <string>
#include <iostream>
using namespace std;
bool solution(string s)
{
bool answer = true;
int Pnum = 0;
int Ynum = 0;
for (int i = 0; i < s.length(); i++) {
if (s[i] == 'p' || s[i] == 'P') Pnum++;
else if (s[i] == 'y' || s[i] == 'Y') Ynum++;
}
if (Pnum == Ynum) answer = true;
else answer = false;
return answer;
}
https://school.programmers.co.kr/learn/courses/30/lessons/12916
반응형
'개인 공부 > 프로그래머스' 카테고리의 다른 글
[level 1] 두 정수 사이의 합 (0) | 2022.07.25 |
---|---|
[level 1] 문자열 내 마음대로 정렬하기 (0) | 2022.07.25 |
[level 1] 문자열 내림차순으로 배치하기 (0) | 2022.07.22 |
[level 1] 문자열 다루기 기본 (0) | 2022.07.22 |
[level 1] 서울에서 김서방 찾기 (0) | 2022.07.21 |
Comments