N, K = map(int, input().split())
A = list(map(int, input(). split()))
B = list(map(int, input(). split()))
A.sort()
B.sort(reverse=True)
j = 0
for i in range(K):
if A[i] < B[j]:
A[i] = B[j]
j+=1
total = sum(A)
print(total)
n, k = map(int, input().split()) # N과 K를 입력 받기
a = list(map(int, input().split())) # 배열 A의 모든 원소를 입력 받기
b = list(map(int, input().split())) # 배열 B의 모든 원소를 입력 받기
a.sort() # 배열 A는 오름차순 정렬 수행
b.sort(reverse=True) # 배열 B는 내림차순 정렬 수행
# 첫 번째 인덱스부터 확인하며, 두 배열의 원소를 최대 K번 비교
for i in range(k):
# A의 원소가 B의 원소보다 작은 경우
if a[i] < b[i]:
# 두 원소를 교체
a[i], b[i] = b[i], a[i]
else: # A의 원소가 B의 원소보다 크거나 같을 때, 반복문을 탈출
break
print(sum(a)) # 배열 A의 모든 원소의 합을 출력
[Python] 이진 탐색 알고리즘(2) - 떡볶이 떡 만들기 (0) | 2022.06.20 |
---|---|
[Python] 이진 탐색 알고리즘(1) 개요 (0) | 2022.06.19 |
[Python] 정렬 알고리즘(6) - 정렬 알고리즘 비교하기 (0) | 2022.06.19 |
[Python] 정렬 알고리즘(5)-계수 정렬(Counting sort) (0) | 2022.06.19 |
[Python] 정렬 알고리즘(4)-퀵 정렬 (0) | 2022.06.19 |
댓글 영역