Codeforces Round 992 (Div. 2) |
---|
Закончено |
Рассмотрим прямой параллелепипед с размерами сторон $$$a$$$, $$$b$$$ и $$$c$$$, состоящий из единичных кубиков $$$k$$$ различных цветов. Мы можем делать циклические сдвиги параллелепипеда в любом измерении и в любой комбинации$$$^{\text{∗}}$$$.
Имеется $$$d_i$$$ кубиков $$$i$$$-го цвета ($$$1 \le i \le k$$$). Сколько можно составить из этих кубиков различных параллелепипедов с данными размерами сторон, никакие два из которых нельзя совместить комбинацией сдвигов?
$$$^{\text{∗}}$$$На рисунке:
Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных. Далее следует описание наборов входных данных.
Первая строка каждого набора входных данных содержит четыре целых числа: $$$a$$$, $$$b$$$, $$$c$$$ и $$$k$$$ ($$$1 \le a, b, c \le 3 \cdot 10^6$$$; $$$a \cdot b \cdot c \le 3 \cdot 10^6$$$; $$$1 \le k \le 10^6$$$) — три стороны параллелепипеда и количество цветов единичных кубиков.
Вторая строка каждого набора входных данных содержит $$$k$$$ целых чисел $$$d_1, d_2, \ldots, d_k$$$ ($$$1 \le d_1 \le d_2 \le \ldots \le d_k \le 3 \cdot 10^6$$$) — элементы массива $$$d$$$: количества кубиков заданного цвета.
Гарантируется, что в каждом наборе входных данных сумма элементов массива $$$d$$$ равна $$$a \cdot b \cdot c$$$.
Гарантируется, что сумма значений $$$k$$$ по всем наборам входных данных не превосходит $$$10 ^ 6$$$.
Для каждого набора входных данных выведите одно целое число — количество различных параллелепипедов по модулю $$$998\,244\,353$$$.
61 1 1 116 1 1 31 2 312 1 1 32 4 63 3 1 23 62 3 3 26 1272 60 96 417280 86400 120960 190080
1 10 1160 12 1044 231490207
В первом наборе существует только один параллелепипед, состоящий из одного единичного куба.
Название |
---|