[BOJ] 2875. 대회 or 인턴
1. 문제
백준대학교에서는 대회에 나갈 때 2명의 여학생과 1명의 남학생이 팀을 결성해서 나가는 것이 원칙이다. (왜인지는 총장님께 여쭈어보는 것이 좋겠다.)
백준대학교는 뛰어난 인재들이 많아 올해에도 N명의 여학생과 M명의 남학생이 팀원을 찾고 있다. 대회에 참여하려는 학생들 중 K명은 반드시 인턴쉽 프로그램에 참여해야 한다. 인턴쉽에 참여하는 학생은 대회에 참여하지 못한다.
백준대학교에서는 뛰어난 인재들이 많기 때문에, 많은 팀을 만드는 것이 최선이다.
여러분은 여학생의 수 N, 남학생의 수 M, 인턴쉽에 참여해야하는 인원 K가 주어질 때 만들 수 있는 최대의 팀 수를 구하면 된다.
2. 입력
첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N)
3. 출력
만들 수 있는 팀의 최대 개수을 출력하면 된다.
4. 풀이
Python
N, M, K = map(int, input().split())
result = 0
while N >= 0 and M >= 0 and N + M >= K:
N -= 2
M -= 1
result += 1
print(result - 1) # 조건과 상관없이 한 개의 팀이 생성되기 때문에 -1
C++
#include <iostream>
using namespace std;
int main() {
int N, M, K, res = 0;
cin >> N >> M >> K;
while (N >= 0 && M >= 0 && N + M >= K) {
N -= 2; M -= 1; res += 1;
}
cout << res - 1;
}
Author And Source
이 문제에 관하여([BOJ] 2875. 대회 or 인턴), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@leesu1012/BOJ-2875.-대회-or-인턴저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)