[Programmers][python] 20. 問題解き実習(9):プログラマーを完走できなかった選手


誤りに対する批判、質問、討論を歓迎します.自由にコメントを残しておきましょう!!

プログラマー-完走しなかった選手


これはプログラマー全行程を完走しなかった選手題のリンクです.

問題の説明


多くのマラソン選手がマラソンに参加した.1人の選手を除いて、すべての選手がマラソンを完走した.
マラソンに出場する選手の名前と完走した選手の名前の並びが完成したら、完走していない選手の名前を返す解決関数を書いてください.

せいげんじょうけん

  • マラソンに出場する選手は1人以上10万人以下.
  • 完了長さは参加者長1より小さい.
  • 参加者の名前は20文字を超えない.
  • の参加者には同名の人がいる可能性があります.
  • I/O例


    participantcompletionreturn["leo", "kiki", "eden"]["eden", "kiki"]"leo"["marina", "josipa", "nikola", "vinko", "filipa"]["josipa", "filipa", "marina", "nikola"]"vinko"["mislav", "stanko", "mislav", "ana"]["stanko", "ana", "mislav"]"mislav"

    I/O例説明


    例1
  • 「leo」は参加者リストに載っていたが、完走者リストに載っていなかったため、完走しなかった.
  • 例2
  • 「vinko」は参加者リストに載っていたが、完走者リストには載っていなかったため完走しなかった.
  • 例#3
  • 「誤導」は参加者リストに2人いたが、完走したリストには1人しかいなかったため、1人は完走しなかった.
  • の意見を打診

  • participantはすべての参加者のリストであり、completionはすべての参加者のうち1つしかないリストである.

  • そこで,2つのリストをソートし,異なる名前のインデックスの名前を見つけ,問題を解決した.

  • Code (Python)

    def solution(participant, completion):
        participant.sort()
        completion.sort()
        
        for i in range(len(completion)):
            if participant[i] != completion[i]:
                return participant[i]
        return participant[-1]

    この記事は、プログラマーアカデミー人工知能Defcosコースで学んだ内容をもとにまとめたものです.