문제
정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
def solution(x) :
if len(x) > 1 :
x.sort(reverse = True)
x.remove(x[-1])
return x
elif len(x) <= 1 :
result = [-1]
return result
테스트는 통과했는데 제출하니 오답이다.
min을 쓰면 된다.
def solution(arr):
if len(arr) <= 1:
return [-1]
else:
min_val = min(arr)
arr.remove(min_val)
return arr
크기순으로 나열해서 remove하는것과 왜 다른지 잘 모르겠다.
해답을 찾아보니 정렬로 배열 순서를 바꾸면 안된다고 한다.
문제 조건에 들어가있으면 좋았을텐데 !
문제
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
def solution(x) :
a = int(len(x) / 2 - 0.5)
if len(x) %2 == 0 :
return x[a:a+2]
else :
return x[a]