백준 10610번(파이썬):30

백준 10610번 문제 정리글 입니다.

문제 출처-https://www.acmicpc.net/problem/10610

문제 내용

백준 10610번

나의 풀이

    n=list(map(int,input()))
    n.sort(reverse=True)

    if (0 not in n) or (sum(n)%3!=0):
        print(-1)
    else:
        result_str = ''.join(map(str, n))
        result = int(result_str)
        print(result)
  1. 30의 배수가 되려면 10과 3의 배수이면 되므로 맨 끝이 0이고 모든 숫자들의 합이 3의 배수이어야 한다.
  2. 입력된 숫자를 리스트에 저장 후 내림차순으로 정렬하여 가장 큰 수를 구할 수 있게 한다.
  3. 조건에 맞는 숫자는 가장 큰 30의 배수를 출력한다.

조건의 가장 큰 30의 배수를 찾는 문제라 비교적 제약조건이 간단했다.