image.png

문제 해석

문제 태그

아이디어

n = 5, k=3

98 54 75 91 68
89 52 27 78 77
  1. 일단 각 색에서 왼쪽 오른쪽 중 더 많이 있는걸 가져간다
98(택) 54(택) 75(택) 91(택) 68
89 52 27 78 77(택)
  1. 선택받지 못한 쪽에서 큰 순서대로 k-1개 고른다
98(택) 54(택) 75(택) 91(택) 68
89(택) 52 27 78(택) 77(택)
  1. 부족한 한세트는 어디서 꺼내져도 한세트가 만들어짐으로 하나만 뽑으면 된다

정답

import sys
input = sys.stdin.readline

t = int(input())
for _ in range(t):
    n, k = map(int, input().split())
    L = list(map(int, input().split()))
    R = list(map(int, input().split()))

    S_max = 0
    mins = []
    for l, r in zip(L, R):
        S_max += max(l, r)
        mins.append(min(l, r))

    mins.sort(reverse=True)
    extra = sum(mins[:k-1]) if k-1 > 0 else 0

    answer = S_max + extra + 1
    print(answer)