https://youtu.be/KGyK-pNvWos?si=UmTopIc_Gx-Xh8nV
<문제> 두 배열의 원소 교체


문제 해결 아이디어

n, k = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
a.sort() # 배열 A는 오름차순 정렬 수행
b.sort(reverse=True) # 배열 B는 내림차순 정렬 수행
# 첫 번재 인덱스부터 확인하며, 두 배열의 원소를 최대 k번 비교
for i in range(k):
if a[i] < b[i]:
a[i], b[i] = b[i], a[i]
else:
break
print(sum(a))
#%% md
* 코드가 거의 동일한데 다른 것이라고 하면, b를 내림차순으로 정렬한 다음에
* a[i]와 b[i]를 비교해서 바꾼 것이다.
* 나는 둘다 오름차순으로 한 다음에 앞과 뒤를 바꾸려고 생각해서 꼬여버렸다.
'Programming > Algorithm' 카테고리의 다른 글
[정렬 알고리즘] 선택 정렬, 삽입 정렬, 퀵 정렬, 계수 정렬 (2) | 2024.02.13 |
---|---|
[DFS&BFS] 문제: 미로 탈출 (2) | 2024.02.13 |
[DFS & BFS] 문제: 음료수 얼려 먹기 (1) | 2024.02.13 |
[DFS&BFS] BFS (Breadth-First Search) (2) | 2024.02.13 |
[DFS&BFS] DFS (Depth-First Search) (0) | 2024.02.13 |