본문 바로가기
Develop/백준 (Cpp)

[백준] 2875번 : 대회 or 인턴 (C++)

by Tarra 2024. 1. 4.

2875번 : 대회 or 인턴


문제)

백준대학교에서는 대회에 나갈 때 2명의 여학생과 1명의 남학생이 팀을 결성해서 나가는 것이 원칙이다. (왜인지는 총장님께 여쭈어보는 것이 좋겠다.)

백준대학교는 뛰어난 인재들이 많아 올해에도 N명의 여학생과 M명의 남학생이 팀원을 찾고 있다. 대회에 참여하려는 학생들 중 K명은 반드시 인턴쉽 프로그램에 참여해야 한다. 인턴쉽에 참여하는 학생은 대회에 참여하지 못한다.

백준대학교에서는 뛰어난 인재들이 많기 때문에, 많은 팀을 만드는 것이 최선이다.

여러분은 여학생의 수 N, 남학생의 수 M, 인턴쉽에 참여해야하는 인원 K가 주어질 때 만들 수 있는 최대의 팀 수를 구하면 된다.

 

 

 

입력 :

첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N),

 

 

출력 :

만들 수 있는 팀의 최대 개수을 출력하면 된다.

 

 

 

 

 

 

풀이)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// 2875. 대회 or 인턴
#include <iostream>
 
using namespace std;
 
int main()
{
    int n, m, k;
    cin >> n >> m >> k;
    
    for (int i = 100; i >= 0; i--)
    {
        // 대회 참가
        int total = 2 * i + i;
 
        if (2 * i > n || i > m) continue;
        if (total + k <= n + m)
        {
            cout << i;
            return 0;
        }
    }
 
    return 0;
}
 
 
 
cs

출처 : https://www.acmicpc.net/problem/2875 

 

2875번: 대회 or 인턴

첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N),

www.acmicpc.net