list comprehension
으로 if else
문으로 arr의 len
이 1보다 클시 for 반복문
+ arr의 min
과 비교를 통해 return
을하는 코드를 작성했으나 시간초과가 떳다.for 반복문
+ min
이 시간초과의 큰 원인인것같다.for문
을 돌면서 min
인지 체크하고 아니면 append
하는 방식에서 arr자체에서 min
을 remove
하는 방식으로 변경하였다.def solution(arr):
return [i for i in arr if i != min(arr)] if len(arr) > 1 else [-1]
# programmers, phase1 : 제일 작은 수 제거하기, python
def solution(arr):
if len(arr) > 1:
arr.remove(min(arr))
return arr
else:
return [-1]
# - , - , - , - , jdyong 외 62 명 님 코드 참고
def rm_small(mylist):
return [i for i in mylist if i > min(mylist)]
https://programmers.co.kr/learn/courses/30/lessons/12935
github
안녕하세요. 많이 도움됐습니다.
그런데 최적코드에서 배열이 빈 경우에 [-1]을 return하는 건 반영이 안되어 있는 것 같은데, 이건 혹시 어떻게 구현할 수 있을까요?