codeforces 1214B. Badges

B. Badges

题目链接:codeforces 1214B

题意:

   b个男生和g个女生去参加比赛(可能来可能不来),只有n个人可以参加,男生需要红色徽章,女生需要蓝色徽章,但不知道具体的参加比赛人数情况,问要准备多少种徽章方案,即问n个人中,男生和女生能组合的种类

题解:

   emmm,如果男生来的最少,那么就按男生的人数加一算,如果女生来的最少,那么就按女生人数加一算,如果总人数最小,那么就是总人数加一

如果总人数大于男生加女生的人数,那么答案就是总人数减男生和女生人数加上一

如果总人数小于男生加女生的人数,那么答案就是男生加女生减去总人数加一

好好想想,就很简单。

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 2e5 + 5;
int main(){
	int b, g, n, ans;
	cin >> b >> g >> n;
	ans = min(b, min(g, n)) + 1;
	if(n >= b+g){
		ans = min(ans, n-b-g+1);
	}
	else{
		ans = min(ans, b+g-n+1);
	}
	cout << ans << endl;
	return 0;
} 
发布了204 篇原创文章 · 获赞 11 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/error311/article/details/100783383