지나가던 개발자

[Python] 백준 6679번(싱기한 네자리 숫자) 문제 풀이 본문

PS/Python

[Python] 백준 6679번(싱기한 네자리 숫자) 문제 풀이

KwonYongHyeon 2022. 10. 13. 17:24

 

def jinsu(n, m):
    s = 0
    while True:
        if n // m == 0:
            s += n
            break
        s += n%m
        n = n // m
    return s

for i in [2992, 2993, 2994, 2995, 2996, 2997, 2998, 2999]:
    print(i)
for i in range(3000, 10000):
    if sum(list(map(int, list(str(i))))) == jinsu(i, 12) == jinsu(i, 16):
        print(i)

 

시간초과가 뜨지 않을까? 생각했지만 괜한 걱정이었다. 잘 된다.

 

jinsu 함수는 저번에 만든 진수 변환기 코드를 조금 응용해서배껴서 만들었다.

 

https://developer-next-to-you.tistory.com/11?category=1120337 

 

[Python] 진수 변환기 만들기

 코딩을 하다보면... 특히 프로그래머스나 등등에서 문제를 풀다보면,,, "진수"를 변환해야 할 일이 매우 자주 생깁니다.  파이썬에서 2, 8, 16진수는 bin(), oct(), hex()라는 매우 좋은 내장함수를 사

developer-next-to-you.tistory.com

Comments