프로그래머스/1레벨

문자열 다루기 기본

Koalitsiya 2022. 12. 26. 13:23

문제 설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

제한 사항
  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.
  • s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.

풀이 방법

1. s의 길이가 4나 6이 아니라면  false 리턴

2. 문자열 중에 숫자가 아닌 부분이 있다면 false 리턴

3. 위의 if문에 모두 만족하지 않는다면 문제의 조건에 부합하므로 true 리턴

#include <string>
#include <vector>

using namespace std;

bool solution(string s) {
    bool answer = true;
    
    if (s.length() != 4 && s.length() != 6) return answer = false;
    
    for(int i = 0; i < s.length();i++){
        if(!(s[i] >= '0' && s[i] <= '9')) return answer = false;
    }
        
    return answer;
}