[プログラマー]私はレベル1のような数字が好きではありません.


私は同じ数字が好きではありません。


問題の説明


配列arr.アレイarrの各要素は、0から9の数字で構成されています.この場合、アレイarrは連続して表示される数字を1つだけ保持し、すべて削除しようとします.ただし、削除後に残数を返す場合は、アレイarr内の要素の順序を維持する必要があります.たとえば、
  • arr=[1,1,3,0,1]は[1,3,0,1]を返します.
  • arr=[4,4,4,3]は[4,3]を返します.
  • 配列arrから連続して現れる数字を削除し、残りの数を返すsolution関数を完了してください.

    せいげんじょうけん

  • アレイarrサイズ:1000000以下の自然数
  • アレイarrの要素サイズ:0以上9以下の整数
  • 最初は、読み間違えたので重複解消でしか解決できませんでしたが・・・
    ただし、これは、シーケンス内で順次ナビゲートし、連続的に繰り返される要素を削除し、1つだけ残すことを意味します.
    ここでも順番を守ります.
    まずtemp変数を作成し、ここではarrの最初の要素を格納します.answerに入れる、arrの2番目の要素から探索が開始され、tempと異なる場合、要素はtempに変換され、tempanswerに入れられる.
    このように、同じ要素が連続して現れると、入れられず、要素が変わるたびに入れられ、連続を解消し、順序を維持します.

    コード#コード#

    def solution(arr):
        answer = []
        temp = arr[0]
        answer.append(temp)
        for i in range(1, len(arr)):
            if arr[i] != temp:
                temp = arr[i]
                answer.append(temp)
    
        return answer