반응형
Notice
Recent Posts
Link
«   2025/02   »
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
Archives
Today
Total
관리 메뉴

500error

[Cos Pro 1급, Python] 1차 7번 : 병합 and 정렬 본문

알고리즘/파이썬

[Cos Pro 1급, Python] 1차 7번 : 병합 and 정렬

Internal Server Error 2024. 2. 26. 21:42
반응형

문제

오름차순으로 정렬되어있는 두 배열 arrA, arrB를 하나의 배열로 합치려 합니다. 단, 합친 후의 배열도 오름차순으로 정렬되어 있어야 합니다.
예를 들어 arrA = [-2, 3, 5, 9], arrB = [0, 1, 5]인 경우 두 배열을 오름차순으로 정렬된 하나의 배열로 합치면 [-2, 0, 1, 3, 5, 5, 9]가 됩니다.
오름차순으로 정렬된 두 배열 arrA와 arrA의 길이 arrA_len, arrB와 arrB의 길이 arrB_len이 주어졌을 때, 두 배열을 오름차순으로 정렬된 하나의 배열로 합쳐서 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요.

 

 

 

 

코드

 

def solution(arrA, arrB):
	arrA_idx = 0
	arrB_idx = 0
	arrA_len = len(arrA)
	arrB_len = len(arrB)
	answer = []
	while arrA_idx < arrA_len and arrB_idx < arrB_len:
		if arrA[arrA_idx] < arrB[arrB_idx]:
			answer.append(arrA[arrA_idx])
			arrA_idx += 1
		else:
			answer.append(arrB[arrB_idx])
			arrB_idx += 1
	while arrA_idx < arrA_len:
		answer.append(arrA[arrA_idx])
		arrA_idx += 1
	while arrB_idx < arrB_len:
		answer.append(arrB[arrB_idx])
		arrB_idx += 1
	return answer
    
    
    

arrA = [-2, 3, 5, 9]
arrB = [0, 1, 5]
ret = solution(arrA, arrB);

print("solution 함수의 반환 값은", ret, "입니다.")
반응형
Comments