1. quiz

  • 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.

2. answer

def solution(array, n):
    box = []
    array.sort()
    for i in array:
        box.append(abs(n-i))
    answer = [array[box.index(min(box))]]
    if len(answer) > 1:
        return min(answer)
    else:
        return answer[0]

3. 다른 사람의 풀이

solution=lambda a,n:sorted(a,key=lambda x:(abs(x-n),x))[0]
  • 진짜 어떻게 이런 생각을 할 수 있는걸까..?
  • 난 정말 고민고민을 하다가 겨우 해결했다면, 저 사람은 정말 깔끔하게 해결했다.
  • lambda 함수를 제대로 익혀서 최대한 lambda로 해결할 방법을 생각하고 생각해야한다.
profile
To be a changer who can overturn world

0개의 댓글