Content

有 \(n\) 个男生、\(m\) 个女生坐在一排,请求出这样一种方案,使得相邻两个座位之间的人的性别不同的次数最多。

数据范围:\(1\leqslant n,m\leqslant 100\)。

Solution

这题不难,就是先把能男女组合的尽量组合了,然后剩余有多的直接丢在后面不管(或者也可以先把多的求出来然后丢在前面,但是不如本方法方便,读者可以亲自尝试),但是有坑点:

  1. 这题目要开文件输入输出!所以千万不要忘了 \(\texttt{freopen}\)。
  2. 如果是女生多,则两两组合时先让女生在前,男生在后,这样才能尽可能地满足题目要求。如果是男生多,则两两组合时先让男生在前,女生在后。

跳过这些坑点,胜利其实就在眼前了。

Code

#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std; int n, m, minx; int main() {
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
scanf("%d%d", &n, &m);
minx = min(n, m);
for(int i = 1; i <= minx; ++i)
printf(minx == n ? "GB" : "BG");
n -= minx, m -= minx;
if(n) for(int i = 1; i <= n; ++i) printf("B");
else for(int i = 1; i <= m; ++i) printf("G");
return 0;
}

最新文章

  1. sql server项目死活启动不了的问题
  2. GitHub使用指南
  3. 151008-JS初级完成,PHP入门(变量常量等)-没假放了
  4. 如何彻底卸载MySQL
  5. PC-hosts 的使用 [可使电脑无法正常上网]
  6. UVA 1374 Power Calculus
  7. C++静态成员
  8. Codeforces Round #300(A.【字符串,多方法】,B.【思维题】,C.【贪心,数学】)
  9. LeetCode算法题-Base 7(Java实现)
  10. linkedin 第三方网站登录(JavaScript SDK)
  11. jQuery常用 遍历函数
  12. python 写入文件形式
  13. Qt Widgets——菜单和菜单栏
  14. 服务发现 - consul 的介绍、部署和使用(转)
  15. 在Android studio中到入Eclipse
  16. UVa 1630 串折叠
  17. 4.Spring——xml配置文件
  18. h5标签
  19. Service Receiver Activity 之间的通信
  20. 我的Android进阶之旅------&amp;gt;Android实现音乐示波器、均衡器、重低音和音场功能

热门文章

  1. idea配置MyBatis
  2. 【PS】证件照修改尺寸
  3. 干掉if-else的方法
  4. Vulnhub-DarkHole_1 题解
  5. DP 优化方法大杂烩 &amp; 做题记录 I.
  6. R语言与医学统计图形-【32】海盗图、词云图、日历图
  7. Linux关机/重启/用户切换/注销
  8. Volatile的3大特性
  9. 前后端分离进阶一:使用ElementUI+前端分页
  10. accent, access, accident