본문 바로가기

코딩테스트/BOJ

[백준/파이썬] 1769번: 3의 배수 (Python)

문제

www.acmicpc.net/problem/1769

 

1769번: 3의 배수

문제가 잘 풀리지 않을 때, 문제를 바라보는 시각을 조금만 다르게 가지면 문제가 쉽게 풀리는 경험을 종종 해 보았을 것이다. 여러 가지 방법이 있지만 그 중 하나로 우리가 풀고 싶은 문제를

www.acmicpc.net

풀이

 - 재귀

 

 - 맨 처음 숫자를 입력받아 리스트에 담아 재귀를 수행하였는데 시간초과가 발생했다. 입력값을 문자열로 받아처리하였더니 시간초과문제 해결

코드

def func(string, cnt):
    if len(string) > 1:
        cnt += 1
        t = 0
        for i in string:
            t += int(i)
        func(str(t), cnt)
    else:
        if int(string) % 3 == 0:
            print(cnt)
            print("YES")
        else:
            print(cnt)
            print("NO")


n = input()
cnt = 0
func(n, cnt)