Notice
Recent Posts
Recent Comments
Link
반응형
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Archives
Today
Total
관리 메뉴

고양이발일기

[Python] HackerRank - Closest Numbers 본문

알고리즘

[Python] HackerRank - Closest Numbers

sowish 2023. 5. 12. 16:33
반응형

Problem

 

Solving Process

 

주어진 배열을 Sort 하고,

for 문을 돌면서 diff 값을 비교하여 minimum 값을 찾으며

새로운 min 값이면 redefine,

같은 min 값이면 add 해주는 식으로 진행하였다!

 

Solution

def closestNumbers(arr):
    arr.sort()
    length = len(arr)
    min = sys.maxsize
    
    ans_arr = []
    for i in range(length):
        if i != length-1:
            diff = arr[i+1] - arr[i]
            if min > diff:
                min = diff
                ans_arr = [arr[i], arr[i+1]]
            elif min == diff:
                ans_arr.append(arr[i])
                ans_arr.append(arr[i+1])
    return ans_arr
반응형
Comments