[コケ]行列-1764、リスニング雑誌

7645 ワード

1764年
📒 アルゴリズムタイプ
  • ソート
  • 📁 問題のソース
    https://www.acmicpc.net/problem/1764
    💡 アイデア
    2つの
  • リストを作成し、1つのリストの名前が別のリストに含まれている場合は、結果リストに追加してソートする簡単なアイデアを提案します.
  • 📌 マイコード
    -間違った答え:
    import sys
    N,M=map(int,sys.stdin.readline().split())
    
    x=[]
    y=[]
    for i in range(N):
      x.append(sys.stdin.readline().strip())
    for i in range(M):
      y.append(sys.stdin.readline().strip())
    
    
    result=[]
    for i in range(N):
      if x[i] in y :
        result.append(x[i])
    result.sort()
    print(len(result))
    for s in result:
      print(s)
    
    -パス:
    import sys
    N,M=map(int,sys.stdin.readline().split())
    
    x=[]
    y=[]
    for i in range(N):
      x.append(sys.stdin.readline().strip())
    for i in range(M):
      y.append(sys.stdin.readline().strip())
    x=set(x)
    y=set(y)
    result=sorted(list(x&y))
    print(len(result))
    for s in result:
      print(s)
    
  • dpアルゴリズムを用いて問題を解決する
  • 考察する
  • listを用いてオーバーラップを求める方法には長い時間がかかる.set資料型を使用します.
  • setデータ型の使用&演算の使用がキー
  • set資料型の中で交差を求めて、listに変換して、それからsort!
  • 📌 リファレンスコード
    https://wook-2124.tistory.com/476