白駿10610号-python
グレースケールアルゴリズム
3の倍数がすべての桁数の値の和が3の倍数の場合、3の倍数です.したがって,すべての位置のビット数を加算して3で割ると,残りは生じず,3の倍数ではない.なお、10の倍数は1の桁数が0でなければならない.その結果、すべてのビット数の和を3に分け、端数0の値が入力nの30の倍数の値となるようにすることができる.結果を降順に並べ替えると、答えが得られます.
n=list(str(input()))
n=list(map(int,n))
sum=0
for i in range(len(n)):
sum+=n[i]
if not (sum%3) and 0 in n :
n.sort()
n.reverse()
n=list(map(str,n))
n=''.join(n)
print(int(n))
else :
print(-1)
30の倍数は3*10の倍数です.すなわち3の倍数であり、同時に10の倍数である.3の倍数がすべての桁数の値の和が3の倍数の場合、3の倍数です.したがって,すべての位置のビット数を加算して3で割ると,残りは生じず,3の倍数ではない.なお、10の倍数は1の桁数が0でなければならない.その結果、すべてのビット数の和を3に分け、端数0の値が入力nの30の倍数の値となるようにすることができる.結果を降順に並べ替えると、答えが得られます.
Reference
この問題について(白駿10610号-python), 我々は、より多くの情報をここで見つけました https://velog.io/@onenewarm/백준-10610번-pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol