AT_abc432_c.[ABC432C] Candy Tribulation

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你有两种糖果的无限供应:小糖果和大糖果。小糖果的重量为 XX 克,大糖果的重量为 YY 克。大糖果比小糖果重(即 X<YX < Y)。

有 NN 个小孩,编号为 11 到 NN。

你决定分发糖果,使得以下条件得以满足:

  • 对于 i=1,…,Ni=1,\dots,N,第 ii 个小孩共收到两种糖果的总数恰好为 AiA_i 个。
  • 分给 NN 个小孩的糖果总重量都相等。

请判断是否存在满足上述条件的分配方案。如果存在,请求出在所有满足条件的分配方案中,大糖果分发总数的最大可能值。

输入格式

输入从标准输入给出,格式如下:

NN XX YY A1A_1 …\dots ANA_N

输出格式

如果不存在满足条件的分配方案,输出 -1。

如果存在满足条件的分配方案,输出在该分配方案下大糖果分发总数的最大可能值。

输入输出样例

  • 输入#1

    3 6 8
    11 10 13

    输出#1

    18
  • 输入#2

    2 3 4
    3 5

    输出#2

    -1
  • 输入#3

    8 4 32
    1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

    输出#3

    8000000000

说明/提示

样例解释 1

你可以如下分发糖果,使得分给每个小孩的糖果总重量都相等:

  • 第 11 个小孩收到 44 颗小糖果和 77 颗大糖果,总重量为 6×4+8×7=806 \times 4 + 8 \times 7 = 80 克。
  • 第 22 个小孩收到 00 颗小糖果和 1010 颗大糖果,总重量为 6×0+8×10=806 \times 0 + 8 \times 10 = 80 克。
  • 第 33 个小孩收到 1212 颗小糖果和 11 颗大糖果,总重量为 6×12+8×1=806 \times 12 + 8 \times 1 = 80 克。

在这种分配方案下,共分发了 1818 颗大糖果。

没有任何分配方案能够使分发的大糖果总数超过 1818。因此,答案为 1818。

样例解释 2

不存在让分配方案满足条件的情况。

样例解释 3

答案可能不在 32 位整数范围内。

数据范围

  • 2≤N≤2×1052 \leq N \leq 2 \times 10^5
  • 1≤Ai≤1091 \leq A_i \leq 10^9
  • 1≤X<Y≤1091 \leq X < Y \leq 10^9
  • 所有输入值均为整数。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页