[Bronze I] 가장 큰 금민수 - 1526

문제 링크

성능 요약

메모리: 110576 KB, 시간: 276 ms

분류

수학, 구현, 브루트포스 알고리즘

제출 일자

2026년 04월 25일 22:04:59

문제 설명

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

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

입력

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

출력

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


💡 해결 방법

💻 코드

# https://www.acmicpc.net/problem/1526
 
 
n = int(input())
 
while True:
    tn = set((' '.join(str(n))).split())
    # print(tn, set(['4','7']))
    if tn == set(['4','7']) or tn == set(['7']) or tn == set(['4']):
        print(n)
        break
    else:
        n -= 1
    
    if n < 0:
        break