공부하는 것들/알고리즘
백준 20044 : Project teams(그리디)
amapro
2021. 8. 22. 20:59
https://www.acmicpc.net/problem/20044
20044번: Project Teams
입력은 표준입력을 사용한다. 입력의 첫 번째 행에는 팀 수를 나타내는 양의 정수 n(1 ≤ n ≤ 5,000)이 주어진다. 그 다음 행에 학생 si 의 코딩 역량 w(si)를 나타내는 2n개의 양의 정수가 공백으로
www.acmicpc.net
나눌 팀의 수가 정해지고, 학생들의 코딩 실력이 정해진다.
가장 실력의 합이 낮은 팀의 코딩 실력이 가장 크게 조를 구성해라.
INPUT : 팀의 수 // 학생들의 코딩 실력
OUTPUT : 가장 실력이 낮은 팀의 코딩실력 합
문제 풀이:
꼭 2인이서만 팀을 짜야 하기 때문에 가장 낮은 순과 가장 높은 순을 묶어주면 된다.
def solve(N, students):
students = sorted(students)
teams = []
for i in range(N):
teams.append([students[i]+students[(2*N-1)-i]])
teams = [sum(x) for x in teams]
return min(teams)
if __name__=='__main__':
N = int(input())
students = list(map(int, input().split()))
print(solve(N, students))