1. 문제 설명
입력 받은 숫자를 조합해 가장 큰 30의 배수를 만드는 문제다.
https://www.acmicpc.net/problem/10610
2. 풀이
n = input()
n = sorted(n, reverse=True)
sum = 0
if '0' not in n:
print("-1")
else:
for i in n:
sum += int(i)
if sum % 3 != 0 :
print("-1")
else :
print(''.join(n))
1. 내림차순으로 정렬
2. 30의 배수는 0이 포함되어 있으므로 0이 없으면 -1 반환
3. 각 숫자 합이 3의 배수가 아니면 -1 반환
4. 맞으면 오름차순으로 출력
728x90