본문 바로가기

프로그래밍 회고록/Python

2021.12.09 코테_두 배열의 원소 교체

728x90
반응형

# 오늘의 문제

두 배열의 원소 교체

난이도 하  | 풀이시간 20분 | 시간 제한 2초 | 메모리 제한 128m

 # 나의 코드

n,m = map(int, input().split())
arr1 = list(map(int, input().split()))
arr2 = list(map(int, input().split()))

arr1.sort()
arr2.sort(reverse = True)

for i in range(m):
  if arr1[i] < arr2[i]:
    arr1[i], arr2[i] = arr2[i], arr1[i]
  else:
    break

sum = 0

for i in range(n):
  sum = sum + arr1[i]

print(arr1)

 

# 정답과의 비교

1.  내 코드의 경우 덧셈을 명시적으로 for문으로 구현을 했지만 정답코드의 경우에는 라이브러리의 sum함수를 사용해
추가 코드없이 문제를 해결해냈다. 파이썬 기본 라이브러리에 대한 공부가 좀 더 필요할것 같다.

n, k = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))

a.sort()
b.sort(reverse = True)

for i in range(k):
  if a[i] < b[i]:
    a[i],b[i] = b[i],a[i]
  else:
    break

print(sum(a))
728x90