https://www.acmicpc.net/problem/2875
그리디
#include <iostream>
using namespace std;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int N, M, K;
cin >> N >> M >> K;
// 여학생 + 남학생이 팀을 꾸리고 난 후의 상태가 조건을 충족해야 한다
int team = 0;
while (N - 2 >= 0 && M - 1 >= 0 && N + M - 3 >= K)
{
N -= 2;
M -= 1;
++team;
}
cout << team;
return 0;
}
1. 팀을 꾸리고 난 뒤에 각 학생수가 음수가 되면 안된다!
2. 팀을 꾸리고 난 뒤에 전체 학생수가 K명 이상이어야 한다.
'Algorithm > BOJ' 카테고리의 다른 글
[BOJ] 1783번: 병든 나이트 (c++) (0) | 2020.06.26 |
---|---|
[BOJ]10610번: 30 (c++) (0) | 2020.06.26 |
[BOJ]1744번: 수 묶기 (c++) (0) | 2020.06.26 |
[BOJ]1541번: 잃어버린 괄호 (c++) (0) | 2020.06.26 |
[BOJ]12015번: 가장 긴 증가하는 부분 수열 2 (c++) (0) | 2020.06.26 |
댓글