C++

[백준 알고리즘] 1526번 : 가장 큰 금민수, c++

2022. 3. 31. 18:57

https://www.acmicpc.net/problem/1526

 

1526번: 가장 큰 금민수

첫째 줄에 N이 주어진다. N은 4보다 크거나 같고 1,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net

c++로 백준 1526번 문제를 풀어보겠다.

 

 

 

 

 

문제

은민이는 4와 7을 좋아하고, 나머지 숫자는 싫어한다. 금민수는 어떤 수가 4와 7로만 이루어진 수를 말한다.

N이 주어졌을 때, N보다 작거나 같은 금민수 중 가장 큰 것을 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 N이 주어진다. N은 4보다 크거나 같고 1,000,000보다 작거나 같은 자연수이다.

출력

첫째 줄에 N보다 작거나 같은 금민수 중 가장 큰 것을 출력한다.

예제 입력 1 복사

100

예제 출력 1 복사

77

 

 

 

 

<문제 풀이>

1. N을 입력받는다.

2. N부터 4까지 거꾸로 for문을 돌며 주어진 문제를 해결한다.

 

- for 반복문 코드 내용 -

while문을 통해 숫자 i를 분해하여 4나 7이 들어있는지 확인한다.

숫자 i에 4나 7이 들어있다면 해당 숫자 i를 출력한 후 종료한다.

숫자 i에 4나 7이 들어있지 않다면 다시 for문의 처음으로 돌아가 다른 수를 확인한다.

 

 

 

코드는 다음과 같다.