CF2040F.Number of Cubes

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

有一个长方体,其长、宽、高分别为 aa、bb 和 cc,由 kk 种不同颜色的单位立方体填充组成。我们可以对这个长方体在任意三个方向执行任意次数的循环移位 ∗^{\text{∗}}。

其中,第 ii 种颜色的单位立方体数量为 did_i(其中 1≤i≤k1 \le i \le k)。请问:用这些立方体可以拼成多少种不同的长方体结构,使得没有哪两种结构可以通过任意组合的循环移位变得相同?

∗^{\text{∗}} 如图所示:

  • 左上角是原始长方体的俯视图(下层与顶层保持同样的移动方式)。
  • 右上角是向右移动 11 格后的长方体俯视图。
  • 左下角是向下移动 22 格后的长方体俯视图。
  • 右下角是分别向右移动 11 格并向下移动 22 格后的长方体俯视图。

输入格式

第一个输入为测试用例的数量 tt(1≤t≤1001 \le t \le 100)。接下来是每个测试用例的详细描述。

每个测试用例的第一行包含四个整数:aa、bb、cc 和 kk(其中 1≤a,b,c≤3⋅1061 \le a, b, c \le 3 \cdot 10^6;a⋅b⋅c≤3⋅106a \cdot b \cdot c \le 3 \cdot 10^6;1≤k≤1061 \le k \le 10^6),表示组成长方体的三条边长及单位立方体的颜色数。

每个测试用例的第二行包含 kk 个整数:d1,d2,…,dkd_1, d_2, \ldots, d_k(其中 1≤d1≤d2≤…≤dk≤3⋅1061 \le d_1 \le d_2 \le \ldots \le d_k \le 3 \cdot 10^6),代表每种颜色的立方体个数。

保证在每个测试用例中,所有 dd 数组元素的和等于 a⋅b⋅ca \cdot b \cdot c。

保证所有测试用例中,各颜色总数 kk 的和不超过 10610^6。

输出格式

对于每个测试用例,输出一个整数,表示不同长方体的数量对 998 244 353998\,244\,353 取模后的结果。

输入输出样例

  • 输入#1

    6
    1 1 1 1
    1
    6 1 1 3
    1 2 3
    12 1 1 3
    2 4 6
    3 3 1 2
    3 6
    2 3 3 2
    6 12
    72 60 96 4
    17280 86400 120960 190080

    输出#1

    1
    10
    1160
    12
    1044
    231490207

说明/提示

在第一个测试用例中,只有一个由一个单位立方体组成的长方体。

第二个测试用例中可能构成的长方体如图所示:

本翻译由 AI 自动生成

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

首页