20210116 // 삼성 SW Expert 아카데미 // 10200
2021. 1. 16. 17:20ㆍProgramming/SW Expert Academy
삼성 SW Expert 아카데미 10200번 "구독자 전생" 문제입니다.
TC = int(input())
for tc in range(1, TC+1):
N,A,B = map(int, input().split())
maxSub = min(A,B)
minSub = max(A+B-N, 0)
print("#%s"%tc, maxSub, minSub)
P채널과 T채널 모두 구독하고 있는 사람의 수의 최댓값과 최솟값을 출력하는 문제다.
생각해보면 쉬운 문제라고 할 수 있다.
최대가 될 경우는 양쪽 구독자가 최대한 많이 겹치는 경우이므로 두 질문 중 답변이 적은 쪽이 최대이다.
최소가 되는 경우는 양쪽 구독자가 최대한 겹치지 않는 경우이다.
이 때는 양쪽 구독자의 합이 인원수가 넘어가지 않으면 상관 없지만 인원수가 넘어갈 경우는 그 인원수를 뺀 만큼이 최소 양쪽 구독자이다. 따라서 A+B-N이거나 0이 된다.
'Programming > SW Expert Academy' 카테고리의 다른 글
SW Expert 아카데미 // 6485 (0) | 2021.01.18 |
---|---|
20210116 // 삼성 SW Expert 아카데미 // 6692 (0) | 2021.01.16 |
20210116 // 삼성 SW Expert 아카데미 // 1940 (0) | 2021.01.16 |
20210116 // 삼성 SW Expert 아카데미 // 1204 (0) | 2021.01.16 |
20210115 // 삼성 SW Expert 아카데미 // 1946 (0) | 2021.01.15 |