欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1807B.Grab the Candies
Grab the Candies
题目描述
Mihai 和 Bianca 正在玩糖果袋的游戏。他们有一排 ,共有 个糖果袋。第 个袋子里有 颗糖果。糖果袋会按照从第一个到第 个的顺序分给两位玩家。
如果某个袋子里的糖果数是偶数,Mihai 会拿走这个袋子。否则,Bianca 会拿走这个袋子。每当一个袋子被拿走时,袋子里的糖果数会加入拿到该袋子的玩家的总糖果数中。
Mihai 想要炫耀一下,所以他希望能够重新排列糖果袋,使得在任意时刻(除了一开始两人都没有糖果时),Mihai 的糖果数都严格多于 Bianca。请你帮 Mihai 判断是否存在这样一种重新排列的方法。
输入格式
输入的第一行包含一个整数 ()——表示测试用例的数量。
每个测试用例的第一行包含一个整数 ()——表示糖果袋的数量。
每个测试用例的第二行包含 个用空格分隔的整数 ()——表示每个糖果袋中的糖果数。
输出格式
对于每个测试用例,如果存在满足条件的重新排列方式,输出 "YES"(不带引号);否则输出 "NO"(不带引号)。
你可以用任意大小写输出答案(例如,"yEs"、"yes"、"Yes" 和 "YES" 都会被识别为肯定答案)。
说明/提示
在第一个测试用例中,Mihai 可以将数组重新排列为 。然后过程如下:
- 第一个袋子有 颗糖果,是偶数,所以 Mihai 拿走——此时 Mihai 有 颗糖果,Bianca 有 颗。
- 第二个袋子有 颗糖果,是奇数,所以 Bianca 拿走——此时 Mihai 有 颗糖果,Bianca 有 颗。
- 第三个袋子有 颗糖果,是偶数,所以 Mihai 拿走——此时 Mihai 有 颗糖果,Bianca 有 颗。
- 第四个袋子有 颗糖果,是奇数,所以 Bianca 拿走——此时 Mihai 有 颗糖果,Bianca 有 颗。
由于 Mihai 始终拥有比 Bianca 更多的糖果,因此这种排列是可行的。
由 ChatGPT 4.1 翻译
样例
3
4
1 2 3 4
4
1 1 1 2
3
1 4 3
YES
NO
NO
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |