본문 바로가기
프로그래밍/알고리즘

백준 - 10610 30 파이썬

by monicada 2023. 1. 18.
728x90

코드

n = list(input())
n.sort(reverse=True)
sum = 0

for i in n:
    sum += int(i)
if "0" not in n or sum % 3 != 0:
    print(-1)
else:
    print(''.join(n))

30의 배수가 되기 위한 조건 

- 해당 숫자 내에 '0'이 있어야 함(10의 배수 조건, 30도 10의 배수이기 때문) 

- 각 자리의 숫자들을 더했을 때 3으로 나누어 떨어져야함(3의 배수 조건)

 

1. 먼저 숫자를 입력받기위한 n을 입력 받음 

2. 가장 큰 수를 찾기위해 내림차순으로 정렬 

3. 30의 배수가 되는 조건식 검사 

4. 안되면 -1을 리턴하기 

 

문제 

댓글