๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๐Ÿ’ก/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ python

by @ENFJ 2024. 6. 11.

arr = [3, 1, 4, 1, 5, 9]
arr.remove(min(arr))  # ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์ธ 1์„ ์ œ๊ฑฐ
print(arr)  # ์ถœ๋ ฅ: [3, 4, 1, 5, 9]

1. ๋ฌธ์ œ ๋งํฌ

์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/12935?language=python3#

 

 

2. ๋ฌธ์ œ ์„ค๋ช…


์ •์ˆ˜๋ฅผ ์ €์žฅํ•œ ๋ฐฐ์—ด, arr ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ œ๊ฑฐํ•œ ๋ฐฐ์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. ๋‹จ, ๋ฆฌํ„ดํ•˜๋ ค๋Š” ๋ฐฐ์—ด์ด ๋นˆ ๋ฐฐ์—ด์ธ ๊ฒฝ์šฐ์—” ๋ฐฐ์—ด์— -1์„ ์ฑ„์›Œ ๋ฆฌํ„ดํ•˜์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์šฐ๋Š” [4,3,2]๋ฅผ ๋ฆฌํ„ด ํ•˜๊ณ , [10]๋ฉด [-1]์„ ๋ฆฌํ„ด ํ•ฉ๋‹ˆ๋‹ค.

์ œํ•œ ์กฐ๊ฑด
arr์€ ๊ธธ์ด 1 ์ด์ƒ์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
์ธ๋ฑ์Šค i, j์— ๋Œ€ํ•ด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์ž…๋‹ˆ๋‹ค.
์ž…์ถœ๋ ฅ ์˜ˆ
arr return
[4,3,2,1] [4,3,2]
[10] [-1]

 


 

 

3. ํ’€์ด & ๋‹ต

def solution(arr):
    if len(arr) == 1:
        return [-1]
    else:
        arr.remove(min(arr))
        return arr

 

arr ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ’์œผ๋กœ [4,3,2,1] ๋ฆฌ์ŠคํŠธ ๊ฐ€ ์˜ˆ์‹œ๋กœ ๋“ค์–ด๊ฐ„๋‹ค.

๋ฆฌ์ŠคํŠธ ๊ฐ’์ด 1๊ฐœ ์ผ ๊ฒฝ์šฐ ์—๋Š” ๋ฌด์กฐ๊ฑด -1 ์ด ๋‚˜์˜จ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ œ์ผ ์ž‘์€ ์ˆ˜๋ฅผ ์ œ๊ฑฐ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— 1๊ฐœ ์ผ ๊ฒฝ์šฐ๋Š” ๊ทธ 1๊ฐœ์˜ ์ˆซ์ž๊ฐ€ ์ œ๊ฑฐ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋งŒ์•ฝ ํ•ด๋‹น ์กฐ๊ฑด์ด ์•„๋‹๊ฒฝ์šฐ else ์•ˆ์˜ ๋ธ”๋Ÿญ์ด ์‹คํ–‰๋˜๋Š”๋ฐ, ๋ฆฌ์ŠคํŠธ๊ฐ€ ํ•œ๊ฐœ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ๊ทธ ์ค‘ ์ œ์ผ ์ž‘์€ ์ˆ˜๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— remove ํ•จ์ˆ˜์™€ min ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค.

 

min ํ•จ์ˆ˜

min ํ•จ์ˆ˜๋Š” ์ฃผ์–ด์ง„ iterable(๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด) ๋‚ด์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. min ํ•จ์ˆ˜๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜๋กœ, ๊ธฐ๋ณธ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

arr = [3, 1, 4, 1, 5, 9]
smallest = min(arr)  # 1์„ ๋ฐ˜ํ™˜
print(smallest)  # ์ถœ๋ ฅ: 1

remove ํ•จ์ˆ˜

remove ํ•จ์ˆ˜๋Š” ๋ฆฌ์ŠคํŠธ์—์„œ ์ฒซ ๋ฒˆ์งธ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ํŠน์ • ๊ฐ’์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. remove๋Š” ๋ฆฌ์ŠคํŠธ์˜ ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๋ฆฌ์ŠคํŠธ ๊ฐ์ฒด์—์„œ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

arr = [3, 1, 4, 1, 5, 9]
arr.remove(1)  # ์ฒซ ๋ฒˆ์งธ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” 1์„ ์ œ๊ฑฐ
print(arr)  # ์ถœ๋ ฅ: [3, 4, 1, 5, 9]

arr.remove(min(arr))์˜ ์˜๋ฏธ

์ด ์ฝ”๋“œ๋Š” arr ๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์ฐพ์•„์„œ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. min(arr)๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ arr ๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์ฐพ์Šต๋‹ˆ๋‹ค.
  2. arr.remove(min(arr))๋Š” min(arr)์—์„œ ๋ฐ˜ํ™˜๋œ ๊ฐ’์„ arr ๋ฆฌ์ŠคํŠธ์—์„œ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
arr = [3, 1, 4, 1, 5, 9]
arr.remove(min(arr))  # ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์ธ 1์„ ์ œ๊ฑฐ
print(arr)  # ์ถœ๋ ฅ: [3, 4, 1, 5, 9]

์œ„์˜ ์˜ˆ์‹œ์—์„œ arr.remove(min(arr))๋Š” ๋ฆฌ์ŠคํŠธ [3, 1, 4, 1, 5, 9]์—์„œ min(arr)๊ฐ€ 1์ด๋ฏ€๋กœ, ์ฒซ ๋ฒˆ์งธ 1์„ ์ œ๊ฑฐํ•˜์—ฌ [3, 4, 1, 5, 9]๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.