본문 바로가기
알고리즘/프로그래머스 PS

[프로그래머스][Level 1][Python] 제일 작은 수 제거하기

by 빛밤하늘 2021. 7. 11.
반응형

밑의 링크는 프로그래머스에서의 문제 링크입니다.

 

코딩테스트 연습 - 제일 작은 수 제거하기

정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1

programmers.co.kr

 

 

 

 

 

 

 

 

파이썬 코드와 결과입니다.

# 정수를 저장한 리스트 arr이 매개변수로 주어집니다.
# arr은 길이 1 이상인 리스트입니다.
def solution(arr):
    # 정답을 저장할 변수를 선언합니다.
    answer = None
    # 정수를 저장한 리스트 arr에서 가장 작은 수를 저장하는 변수를 선언합니다.
    min_num = min(arr)
    # arr에서 가장 작은 수의 인덱스를 저장하는 변수를 선언합니다.
    min_num_idx = arr.index(min_num)

    # arr에서 가장 작은 수를 제거합니다.
    del arr[min_num_idx]

    # arr이 빈 리스트라면
    if arr == []:
        # answer에 [-1]을 저장합니다.
        answer = [-1]
    # arr이 빈 리스트가 아니라면
    else:
        # 가장 작은 수가 제거된 arr을 answer에 저장합니다.
        answer = arr

    # answer에 저장된 리스트를 반환합니다.
    return answer

결과

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

반응형

댓글