문제 링크
https://www.acmicpc.net/problem/10610
30의 배수가 되려면, 3의 배수이며, 1의 자리가 0이어야한다.
3의 배수가 되려면, 각 자리 수의 합이 3의 배수가 되어야 한다.
이를 만족시키고, 내림차순 정렬을 하면 30의 배수가 될 수 있는 가장 큰 수를 구할 수 있다.
정답 코드
N= list(map(int,input()))
sum = 0
for i in N:
sum += i
if sum % 3 != 0 or 0 not in N:
print(-1)
else:
N = sorted(N,reverse=True)
for i in N:
print(i,end='')
728x90
'파이썬 알고리즘 문제 풀이' 카테고리의 다른 글
Baekjoon Online Judge 1931번 파이썬. 그리디. (0) | 2023.01.09 |
---|---|
Baekjoon Online Judge 1783번 파이썬. 그리디. (0) | 2023.01.06 |
Baekjoon Online Judge 2875번. 그리디 (0) | 2023.01.05 |
Baekjoon Online Judge 11047번 파이썬. 그리디 (0) | 2023.01.05 |
Baekjoon Online Judge 1629번 파이썬. 분할 정복. (0) | 2022.12.29 |