happy coding

[level 0] 가까운 수 본문

coding study/programmars

[level 0] 가까운 수

yeoonii 2024. 6. 13. 00:03

문제 설명

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


제한사항
  • 1 ≤ array의 길이 ≤ 100
  • 1 ≤ array의 원소 ≤ 100
  • 1 ≤ n ≤ 100
  • 가장 가까운 수가 여러 개일 경우 더 작은 수를 return 합니다.

내 풀이

def solution(array, n):
    new_arr = sorted(array)
    arr = [0]*len(array)
    
    for i in range(len(array)):
        arr[i] = abs(new_arr[i]-n)
    
    return new_arr[arr.index(min(arr))]

 

다른 풀이

solution=lambda a,n:sorted(a,key=lambda x:(abs(x-n),x))[0]
def solution(array, n):
    array.sort(key = lambda x : (abs(x-n), x-n))
    answer = array[0]
    return answer
Comments