企业如何利用HarmonyOS开发工具提升小程序开发效率与合规性
506
2022-11-09
Codeforces 839 B. Game of the Rows (贪心)
Description
Input
The first line contains two integers n and k (1 ≤ n ≤ 10000, 1 ≤ k ≤ 100) — the number of rows and the number of groups of soldiers, respectively.The second line contains k integers a1, a2, a3, …, ak (1 ≤ ai ≤ 10000), where ai denotes the number of soldiers in the i-th group.It is guaranteed that a1 + a2 + … + ak ≤ 8·n.
Output
If we can place the soldiers in the airplane print “YES” (without quotes). Otherwise print “NO” (without quotes).You can choose the case (lower or upper) for each letter arbitrary.
Example input
2 25 8
Example output
YES
题意
有 k 个不同的团体,每个团体有 ai 人,现有 n 排 8 座的飞机,要为这些团体分配座位且不同团体的人不能坐在相邻位置,问能否分配成功。
思路
既然中间位置比较特殊,因此我们贪心从团体人数最高开始往下枚举,为每一个团体的人优先分配中间的位置,标记当前所剩余的单人座,双人座,以及四人座的个数。
假设中间有一个 A ,那么还可以坐两个 B ;中间有两个 A ,那么还可以坐一个 B 。
最终如果对于某个人数没有座位可分则输出 NO ,否则输出 YES 。
AC 代码
#include
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~