필요/코딩테스트(프로그래머스)
[프로그래머스/C++] ㅡ LV1 - 문자열 다루기 기본
ㅊㅇㅅ
2021. 3. 19. 20:19
문제
programmers.co.kr/learn/courses/30/lessons/12918
코딩테스트 연습 - 문자열 다루기 기본
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1
programmers.co.kr
풀이
#include <string>
using namespace std;
bool solution(string s) {
bool answer = true;
if (s.size() == 4 || s.size() == 6 ) { // 사이즈가 4나 6인 경우
for (int i=0; i<s.size(); i++) {
if (s[i] < '0' || s[i] > '9') { // 숫자가 아닌 경우
answer = false;
break;
}
}
}
else {
answer = false;
}
return answer;
}
풀이
answer의 default 값을 true로 지정했다.
그리고 조건을 만족하지 않는 경우만 false로 값을 변경하는 방식으로 진행했다.
if 문을 사용하여 false인 경우를 나누는데, 일단 size가 4나 6이 아니면 바로 false가 된다.
그 뒤 문자열의 요소들이 숫자가 아닌 경우 또 false로 변경한다.