logo AlgoBeat OnlineJudge
登录 注册

#216577. [EGOI 2026] 蛋糕 / Cakes

内存限制:1024 MiB 时间限制:2000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

Liliana 生日到了,她邀请了所有好朋友来庆祝!为了让派对更特别,她打算准备多个蛋糕,每个蛋糕上都装饰着各种配料,比如草莓、杏仁或果仁糖。Liliana 有 种配料,每种配料 个。

蛋糕的“美味度”由其上出现次数最多的配料的次数决定。比如:

  • 蛋糕配料为 时,美味度为 ,因为配料 出现了三次。
  • 蛋糕配料为 时,美味度为 ,因为配料 都出现了两次,且没有其他配料出现次数更多。

Liliana 想烤几个美味度相同的蛋糕,并且要用完所有的配料,不能有剩余。她还没决定要烤多少个蛋糕。她正在考虑 种方案,每种方案指定了一个具体的蛋糕数量 。对于每种方案,请判断是否能把所有配料分摊到 个蛋糕中,且每个蛋糕的美味度都相同。蛋糕上的配料数量可以不同,但每个蛋糕至少需要有一份配料。请注意,不同的蛋糕可以包含不同数量的配料种类。

输入格式

第一行包含两个整数 ,分别代表配料种类数和方案数。第二行包含 个整数 ,其中 表示配料 的数量。接下来的 行,每行包含一个整数 ,指定了第 个方案所需的蛋糕数量。

输出格式

输出 行。如果能将所有配料分摊到 个美味度相同的蛋糕中,第 行输出 YES,否则输出 NO

样例

样例输入 1

4 5
2 5 1 1
1
2
3
4
5

样例输出 1

YES
NO
YES
NO
YES

样例输入 2

1 1
4
2

样例输出 2

YES

样例输入 3

5 3
1 1 1 1 1
1
1000000000000000000
5

样例输出 3

YES
NO
YES

数据范围与提示

样例解释

在第一个样例中,Liliana 有四种配料:两个 0 号配料(绿色三角形表示),五个 1 号配料(黄色星星表示),一个 2 号配料(橙色圆形表示),以及一个 3 号配料(蓝色正方形表示)。

时,Liliana 可以做一个美味度为 的蛋糕,把所有配料都放在一个蛋糕上:

  • 蛋糕 1: (配料 1 出现了五次)。

    :::align{center}

    时的分配示例。 :::

时,Liliana 不可能将所有配料分配到两个美味度相同的蛋糕中。

时,Liliana 可以做 个蛋糕,每个美味度为 ,分配如下:

  • 蛋糕 1: (配料 0 出现了两次)。

  • 蛋糕 2: (配料 1 出现了两次)。

  • 蛋糕 3: (配料 1 出现了两次)。

    :::align{center}

    时的分配示例。 :::

时,Liliana 不可能将所有配料分配到四个美味度相同的蛋糕中。

时,Liliana 可以做 个蛋糕,每个美味度为 ,分配如下:

  • 蛋糕 1: (配料 0 和 1 各出现一次)。

  • 蛋糕 2: (配料 0 和 1 各出现一次)。

  • 蛋糕 3: (配料 1 出现一次)。

  • 蛋糕 4: (配料 1 和 2 各出现一次)。

  • 蛋糕 5: (配料 1 和 3 各出现一次)。

    :::align{center}

    时的分配示例。 :::

约束条件

  • .
  • .
  • .

评分方式

你的程序将在分成若干子任务的测试数据上进行测试。要获得某个子任务的分数,你必须正确解出该子任务中所有的测试数据。

  • 子任务 [ 分]: 样例。
  • 子任务 [ 分]:
  • 子任务 [ 分]:
  • 子任务 [ 分]:
  • 子任务 [ 分]:
  • 子任务 [ 分]: 没有额外的约束条件。