문제
rm_small함수는 list타입 변수 mylist을 매개변수로 입력받습니다.
mylist 에서 가장 작은 수를 제거한 리스트를 리턴하고, mylist의 원소가 1개 이하인 경우는 []를 리턴하는 함수를 완성하세요.
예를들어 mylist가 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10, 8, 22]면 [10, 22]를 리턴 합니다.
나의 풀이
1 2 3 4 5 6 7 8 9 10 | def rm_small(mylist): if len(mylist) == 0: return [] mylist.remove(min(mylist)) return mylist # 아래는 테스트로 출력해 보기 위한 코드입니다. my_list = [4, 3, 2, 1] print("결과 {} ".format(rm_small(my_list))) | cs |
min메소드를 사용해서 최소 수를 찾은 다음 remove로 이용해서 리스트에서 최소 수를 제거하면 된다.
다른 사람의 풀이
1 2 3 4 5 6 7 8 9 10 | def rm_small(mylist): # 함수를 완성하세요 mylist.pop(mylist.index(min(mylist))) return mylist # 아래는 테스트로 출력해 보기 위한 코드입니다. my_list = [4, 3, 2, 1] print("결과 {} ".format(rm_small(my_list))) | cs |
간단한 문제지만 가장 작은 수의 index를찾아서 이 수를 pop으로 제거하고 리스트를 리턴한느 방법이다.
'Computer Science > Problem Solving' 카테고리의 다른 글
[tryhelloworld]피보나치의 수 by파이썬 (0) | 2017.08.14 |
---|---|
[tryhelloworld] 같은 수는 싫어 by파이썬 (0) | 2017.08.14 |
[tryhellowrld]level1 행렬의 곱셈 by파이썬 (0) | 2017.07.31 |
[tryhelloworld]level1 행렬의 덧셈 by 파이썬 (0) | 2017.07.31 |
[tryhelloworld]level1 핸드폰 번호 가리기 by파이썬 (0) | 2017.07.31 |