[ALGORITHM] BOJ 5692. 팩토리얼 진법

less than 1 minute read


ALGORITHM Übung - 백준

  • 알고리즘 문제 풀이를 통한 코딩 테스트 연습

문제

코드

import sys

# factorial method
def factorial(n):
    return n * factorial(n-1) if n > 1 else 1


if __name__ == "__main__":

    while 1:
        # get number
        num = sys.stdin.readline().rstrip()
        # if 0 break
        if num == "0":
            break

        i, ans = 1, 0
        # reverse num and add each digit_number * factorial(i)
        for n in num[::-1]:
            ans += int(n) * factorial(i)
            i += 1
        print(ans)