BJ 1181単語の並べ替え
もし問題があったら?
私が試した方法入力単語の長さをインデックスとする2次元配列(words)を作成します.
(例えば、全長10の単語がword[10]に含まれることを確保するため) .単語の配列を完了します. 個の単語を巡回(長さ順)(1次元配列)し、重複値を除去して並べ替える(辞書順) . readline を使用セットを使用する繰り返し値を最初から消去し、入力 を受信する.並べ替えの場合、key=lenを使用して長さを並べ替えます(長さで並べ替えられるとは知りませんでしたが...) 行が必要な場合はjoinエスケープ文字 を使用します.
私が試した方法
(例えば、全長10の単語がword[10]に含まれることを確保するため)
# 1.
N = int(input())
words = [[] for _ in range(52)]
# 2.
for _ in range(N):
word = input()
n = len(word)
words[n].append(word)
# 3.
for word in words:
for elem in sorted(list(set(word))):
print(elem)
他の分コードを参照して最適化import sys
N = int(input())
words = set()
for _ in range(N):
words.add(sys.stdin.readline().rstrip())
words = sorted(sorted(list(words)), key=len)
print('\n'.join(words))
Reference
この問題について(BJ 1181単語の並べ替え), 我々は、より多くの情報をここで見つけました https://velog.io/@noggrie21/BJ-1181-단어-정렬テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol