- 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
- C언어
- 공유대학
- 동적할당
- 파이썬
- 비주얼 베이직
- 컴퓨터공학과
- Firebase
- 코딩테스트
- 배열
- 프로그래머스
- python
- 알고리즘
- 구글 로그인
- 프로그래밍 입문
- 로그인
- 안드로이드
- 백준
- oauth
- til
- Java
- C++
- sql
- 연결리스트
- 자료구조
- 정렬
- firebase google
- 자바
- android studio
- 안드로이드 스튜디오
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