Baekjoon Online Judge [Python] 16204번 카드 뽑기
2024. 11. 24. 14:50ㆍCODING/BOJ [python]
320x100
카드의 개수를 계산하는 문제입니다.
입출력 조건은 간단했다.
입력 : 카드의 개수, 앞면이 O인 카드의 개수, 뒷면이 O인 카드의 개수
출력 : 같은 모양이 적혀있는 카드의 최대 개수
O의 개수만 입력으로 받지만, 출력은 X의 개수까지 생각해야 한다.
예제를 보며 이해해보자.
예제를 보며 머리속으로만 이해하기에 조금 어려움이 있어서 그림판을 사용했다^!^
4장의 카드가 있고, 앞면에는 3개의 O가, 뒷면에는 2개의 O가 있다.
최대의 수를 구하는 것이기 때문에 최대한 앞뒤가 같도록 배치해준다.
앞면에는 3개의 O와 1개의 X가 있고, 뒷면에는 2개의 O와 2개의 X가 있다.
그러면 2개의 O와 1개의 X가 앞뒤로 같을 수 있기 때문에 출력값은 3이 된다.
흠.... 계산식을 만들어보자.
O의 최대 개수는 M과 K중에서 작은 숫자만큼만 가능하다. == min(M, K)
X의 최대 개수도 위와 같은 방식으로 구하면 == min(N-M, N-K)
이 둘을 더하면 되지 않을까?
코드화~
N, M, K = map(int, input().split())
print(min(M,K) + min(N-M, N-K))
320x100
320x100
'CODING > BOJ [python]' 카테고리의 다른 글
Baekjoon Online Judge [Python] 2751번 수 정렬하기 2 (0) | 2024.11.26 |
---|---|
Baekjoon Online Judge [Python] 2920번 음계 (0) | 2024.11.25 |
Baekjoon Online Judge [Python] 23795번 사장님 도박은 재미로 하셔야 합니다 (0) | 2024.11.23 |
Baekjoon Online Judge [Python] 9295번 주사위 (0) | 2024.11.22 |
Baekjoon Online Judge [Python] 31403번 A+B-C (0) | 2024.11.21 |