본문 바로가기
Develop/프로그래머스 (Cpp)

[프로그래머스] 저주의 숫자 3 (C++)

by Tarra 2023. 3. 4.

저주의 숫자 3 / Lv.0


문제  설명 )

3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않습니다. 3x 마을 사람들의 숫자는 다음과 같습니다.

정수 n이 매개변수로 주어질 때, n을 3x 마을에서 사용하는 숫자로 바꿔 return하도록 solution 함수를 완성해주세요.

 

 

 

제한 사항 )

  • 1 ≤ n ≤ 100

 

 

 

입출력 예 )

 

 

입출력 예 설명 )

입출력 예 #1

  • 15를 3x 마을의 숫자로 변환하면 25입니다.

입출력 예 #2

  • 40을 3x 마을의 숫자로 변환하면 76입니다.

 

 

풀이)

 

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
31
32
33
34
35
36
37
38
#include <string>
#include <vector>
 
using namespace std;
 
int solution(int n) {
    // 3x 마을의 수
    int answer = 1;
    
    // 실제 수
    int i = 1;
    while(1)
    {
        // 문자열에서 3을 찾는다면
        string temp = to_string(answer);
        if (temp.find("3"!= -1)
        {
            answer += 1;
            continue;
        }
        
        // 3의 배수라면
        if (answer % 3 == 0)
        {
            answer += 1;
            continue;
        }
        
        // 모든 체크를 끝내고 return
        if (i == n)
        {
            return answer;
        }
        
        i++;
        answer++;
    }
}
cs

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120871

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr