[python]BOJ 1181:単語のソート

3733 ワード

  • https://www.acmicpc.net/problem/1181

  • アイデア

  • 整数Nを受信し、重複文N値順にユーザから単語を入力して配列
  • に保存する
  • len()関数は、リスト内の各要素の長さ
  • を決定する.
  • リスト内の重複除外
  • リスト内の各要素の長さが等しい場合はアルファベット順に
  • コード#コード#

    N = int(input())
    li = []
    
    for i in range(N):
        word = str(input())
        li.append(word)
    
    li_set = set(li)    # set으로 변환하여 li 리스트 내 중복 제거
    Result_list = list(li_set)  # set을 다시 리스트로 변환
    Result_list = sorted(Result_list, key=len)  # 원소의 길이를 기준으로 오름차순 정렬
    Result_list = sorted(Result_list, key=lambda x: (len(x), x))  # 길이가 같을 때 알파벳 순으로 정렬
    
    for j in range(len(Result_list)):
        print(Result_list[j])
    

    学識


    問題を正しく見ることができず、辞書順に並べ替える条件が入っていないので、ずっと失敗しています.集中して読みます
  • sorted()関数のlen,lambda条件