k번째 숫자 찾기

Gino·2022년 4월 27일
1
def findKth(myInput, k) :
    '''
    매 순간마다 k번째로 작은 원소를 리스트로 반환합니다.
    '''

    result = []
    data = []
    
    for i in myInput:
        data.append(i)
        data.sort()
        
        if len(data) < k:
            result.append(-1)  # 길이가 k 보다 작으면
        else:
            result.append(data[k-1]) # k번째로 작은 수 추가 (-1은 인덱스 보정)
        
    return result

def main():
    '''
    테스트를 하고싶으면, 아래 부분을 수정합니다.
    '''

    firstLine = [int(x) for x in input("n과 k를 입력하세요 (예시:10 3): ").split()]
    myInput = [int(x) for x in input("n개의 숫자를 차례대로 입력하세요 (예시:1 9 8 5 2 3 5 6 2 10): ").split()]

    print('정렬 결과: ', *findKth(myInput, firstLine[1]))
if __name__ == "__main__":
    main()
profile
나무를 심는 사람

0개의 댓글