[백준/BOJ] 백준 2875번 : 대회 or 인턴
2020. 6. 10. 04:20ㆍ알고리즘 문제풀이
https://www.acmicpc.net/problem/2875
인턴에 참여해야 될 학생의 수가 k명일 때, 각 단계마다 어떤 학생이 인턴에 참여해야 할지를 판단해 1명씩 결정해 k명 모두 결정했을 때 인턴을 가고 남은 학생들로 대회에 참여할 팀을 구성한다.
코드
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
int n, m, k;
int result;
cin >> n >> m >> k;
//인턴에 참여할 k명이 모두 정해질때 까지 반복
while (k != 0)
{
//남학생수의 2배보다 여학생의 수가 많은경우
if (n > m * 2)
{
//여학생이 인턴에 참여한다
n--;
k--;
}
//그렇지 않은 경우 남학생이 참여한다
else
{
m--;
k--;
}
}
//팀은 여학생2명 남학생 1명으로 구성되므로
//남은 인원중 (여학생의 수/2) 와 (남학생의 수) 중 작은값이 만들수 있는 최대 팀의 수이다.
result = min(n / 2, m);
cout << result;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 1049번 : 기타줄 (0) | 2020.06.12 |
---|---|
[백준/BOJ] 백준 1120번 : 문자열 (0) | 2020.06.11 |
[백준/BOJ] 백준 2217번 : 로프 (0) | 2020.06.09 |
[백준/BOJ] 백준 5585번 : 거스름돈 (0) | 2020.06.09 |
[백준/BOJ] 백준 1931번 : 회의실배정 (0) | 2020.06.08 |