문제 링크
전형적으로 알면 쉽고 모르면 헷갈리는 문제
이건 배수의 판별에 대해 잘 알아야한다.
나는 뭐 기억이 잘 안나긴 했지만 고등학생 때 수업시간에 우연히 들었기에 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)
머싯는 그녀 ..