[νλ‘κ·Έλλ¨Έμ€_μ€ν/ν] κ°μ μ«μλ μ«μ΄ (νμ΄μ¬)
λ¬Έμ μ€λͺ
(https://school.programmers.co.kr/learn/courses/30/lessons/12906?language=python3)
λ°°μ΄ arrκ° μ£Όμ΄μ§λλ€. λ°°μ΄ arrμ κ° μμλ μ«μ 0λΆν° 9κΉμ§λ‘ μ΄λ£¨μ΄μ Έ μμ΅λλ€. μ΄λ, λ°°μ΄ arrμμ μ°μμ μΌλ‘ λνλλ μ«μλ νλλ§ λ¨κΈ°κ³ μ λΆ μ κ±°νλ €κ³ ν©λλ€. λ¨, μ κ±°λ ν λ¨μ μλ€μ λ°νν λλ λ°°μ΄ arrμ μμλ€μ μμλ₯Ό μ μ§ν΄μΌ ν©λλ€. μλ₯Ό λ€λ©΄,
- arr = [1, 1, 3, 3, 0, 1, 1] μ΄λ©΄ [1, 3, 0, 1] μ return ν©λλ€.
- arr = [4, 4, 4, 3, 3] μ΄λ©΄ [4, 3] μ return ν©λλ€.
λ°°μ΄ arrμμ μ°μμ μΌλ‘ λνλλ μ«μλ μ κ±°νκ³ λ¨μ μλ€μ return νλ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
μ νμ¬ν- λ°°μ΄ arrμ ν¬κΈ° : 1,000,000 μ΄νμ μμ°μ
- λ°°μ΄ arrμ μμμ ν¬κΈ° : 0λ³΄λ€ ν¬κ±°λ κ°κ³ 9λ³΄λ€ μκ±°λ κ°μ μ μ
μ½λ
def solution(arr):
answer = []
# [μ€ν] λ²νΌμ λλ₯΄λ©΄ μΆλ ₯ κ°μ λ³Ό μ μμ΅λλ€.
for i in range(len(arr)):
# print(i) -> 0,1,2,3,4,5,6
# print(arr) -> [1,1,3,3,0,1,1]
if i == 0:
answer.append(arr[i])
elif arr[i] != arr[i-1]:
answer.append(arr[i])
return answer
μ½λ μ€λͺ
0λ²μ§Έ λ°°μ΄μ 무쑰건 μΆκ°ν΄μ€λλ€. (μ¦, 첫λ²μ§Έ μΈλ±μ€λ₯Ό λ»ν¨)
μλνλ©΄ λΉ λ°°μ΄ κ³΅κ°μ μ²μ μΆκ°νλ μλ μ€λ³΅μ΄ μκΈ° λλ¬Έμ λλ€.
κ·Έ ν μΆκ°ν μ λΆν°λ 쑰건μ μΆκ°ν΄μ£Όμ΄μΌν©λλ€.
μ λ μΆκ°ν μ μ λ°λ‘ μμ μΆκ°λ μλ₯Ό λΉκ΅νμλλ°μ, λ§μ½ κ°μ§ μλ€λ©΄ μ€λ³΅μ΄ μλκΈ° λλ¬Έμ μΆκ°ν΄μ£Όμμ΅λλ€.