[백준] 10610 - 30 (python)

Jin·2023년 12월 30일
1

문제 링크
전형적으로 알면 쉽고 모르면 헷갈리는 문제

이건 배수의 판별에 대해 잘 알아야한다.
나는 뭐 기억이 잘 안나긴 했지만 고등학생 때 수업시간에 우연히 들었기에 30배수를 판별하는 쉬운 방법이 있다는 것은 알았지만 결국은 해별 방법은 몰랐다는 것~

그래도 한가지 알아낸 것은 뒤에 0이 있어야 10의 배수라는 것이다.
그러면 30의 배수는 어떻게 구하냐면 3의 배수이면서 10의 배수인 것을 구하면 되는 부분!

3의 배수를 구하는 방법은 간단하다. 각 자리의 수를 더해서 3의 배수가 나오면 된다.
뭐 사실 설명하기 싫은게 아니라 위키피디아에 40까지의 수 배수 판별법이 나와있으니 참고하면 좋을 거 같다.
배수 판별법

헉... 알면 좋지만 막상 모르면 생각안나는 옛기억을 끄집어 냈다.

요즘 그저 브딱이 문제만 풀고있는데, 적어도 실5문제는 풀자... 멍청아...

n = input()
l = []

for i in n:
    l.append(int(i))
    
# 정렬
l = sorted(l, reverse=True)

# 더한게 3이 나오거나 끝자리가 0이 나와야 30의 배수임
if sum(l) % 3 ==0 and l[-1] == 0:
    tmp = ''
    for i in l:
        tmp += str(i)
    print(int(tmp))
else:
    print(-1)
profile
go-getter

1개의 댓글

comment-user-thumbnail
2023년 12월 31일

머싯는 그녀 ..

답글 달기