AT_agc054_b.[AGC054B] Greedy Division

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

有 NN 个橘子,编号为 11 到 NN。第 ii 个橘子的重量为 WiW_i。高桥君和青木君将按照以下方式分橘子:

  • 选择一个 $ (1,2,\cdots,N) $ 的排列 $ (p_1,\ p_2,\ \cdots,\ p_N) $。

  • 对于 i=1,2,⋯ ,Ni=1,2,\cdots,N,依次进行以下操作:

    • 如果高桥君已经拿到的橘子总重量小于等于青木君已经拿到的橘子总重量,则高桥君拿橘子 pip_i。否则,青木君拿橘子 pip_i。

请你求出有多少种排列 pp,使得最终两人拿到的橘子总重量相等。答案对 998244353998244353 取模。

输入格式

输入从标准输入读入,格式如下:

NN W1W_1 W2W_2 ⋯\cdots WNW_N

输出格式

输出答案。

输入输出样例

  • 输入#1

    3
    1 1 2

    输出#1

    4
  • 输入#2

    4
    1 2 3 8

    输出#2

    0
  • 输入#3

    20
    2 8 4 7 5 3 1 2 4 1 2 5 4 3 3 8 1 7 8 2

    输出#3

    373835282

说明/提示

限制条件

  • 2≤N≤1002 \leq N \leq 100
  • 1≤Wi≤1001 \leq W_i \leq 100
  • 输入的所有数均为整数

样例解释 1

满足条件的排列 pp 有 (1,3,2),(2,3,1),(3,1,2),(3,2,1)(1,3,2),(2,3,1),(3,1,2),(3,2,1) 共 44 种。例如,当 p=(3,2,1)p=(3,2,1) 时,过程如下:

  • i=1i=1:高桥君已拿橘子总重量为 00,青木君已拿橘子总重量为 00。高桥君拿橘子 pi=3p_i=3。
  • i=2i=2:高桥君已拿橘子总重量为 22,青木君已拿橘子总重量为 00。青木君拿橘子 pi=2p_i=2。
  • i=3i=3:高桥君已拿橘子总重量为 22,青木君已拿橘子总重量为 11。青木君拿橘子 pi=1p_i=1。

因此 p=(3,2,1)p=(3,2,1) 满足条件。

由 ChatGPT 4.1 翻译

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

首页