#SLT08B. 2026年S组模拟赛10连测第8场-T2 程老师的混色方案

2026年S组模拟赛10连测第8场-T2 程老师的混色方案

项目 内容
输入文件名 mixcolor.in
输出文件名 mixcolor.out
可执行文件名 mixcolor
每个测试点时限 1.0 秒
内存限制 512 MiB
测试点数目 20
是否等分 是

结果比较方式为全文比较(过滤行末空格及文末换行)。

题目描述

程老师接了一批横幅订单。每条横幅都是一条细长的布,从左到右分成 nn 个格子;一个格子只染一种颜色,每个格子都必须染上颜色,不留空白。店里常备的颜料有三种:红色、黄色、蓝色。订单上写着这条横幅要恰好用掉红颜料涂满 aa 个格子、黄颜料涂满 bb 个格子、蓝颜料涂满 cc 个格子,其中 a+b+c=na + b + c = n;三种颜料的用量都要不多不少地正好用完,多余的格子没有别的颜色可以补。

横幅交付前还要过一道规矩,这条规矩印在订单背面:横幅上不允许出现红格与黄格相邻。这里的"相邻"指两个格子在横幅上左右紧挨着,与两者的先后次序无关。红格与蓝格相邻、黄格与蓝格相邻、两个同色格相邻,都不违反这条规矩。

程老师是一条一条地染的。动手之前他先在纸上把这条横幅的样式定下来:纸上从左到右写下 nn 个记号,第 ii 个记号写这一条横幅第 ii 个格子染什么颜色;写完之后照着纸上的记号下笔,记号写的是什么颜色,格子上就是什么颜色。同一份订单上纸可以换着写很多遍,每一份写满 nn 个记号的纸对应一种染法。

同一份订单往往有很多种染法。两份纸只要在某个位置上写的颜色不同,就当作两种不同的染法;格子从左到右的位置是有分别的。程老师手上还有 qq 份订单,每份订单给出的三种颜料用量都不一样,他需要分别算出每份订单各有多少种染法。单份订单的染法数可能相当大,你只需要给出它对 998244353998244353 取模后的结果。

输入格式

从文件 mixcolor.in 中读入数据。

  • 第一行一个整数 qq,表示订单份数;
  • 接下来 qq 行,每行三个整数 a,b,ca, b, c,依次表示一份订单上红、黄、蓝三种颜料的用量。

输出格式

输出到文件 mixcolor.out 中。

输出 qq 行,第 ii 行一个整数,表示第 ii 份订单的染法数对 998244353998244353 取模后的结果。

样例

2
1 1 1
2 1 0
2
0

样例 1 解释

第一份订单要用掉 11 格红、11 格黄、11 格蓝,一共 33 个格子。红格与黄格只要紧挨着就不行,而这条横幅只有一个蓝格,它必须落在红格与黄格之间把两者隔开,于是蓝格只能占中间那一格,红格与黄格分别落在左右两端:红蓝黄、黄蓝红,共 22 种。第二份订单里没有蓝格,33 个格子无论怎么排都找不到东西把红格与黄格隔开,红格与黄格总会紧挨着,一种染法都不成立。

3
0 2 1
2 0 3
1 1 2
3
10
6

样例 2 解释

第三条订单只有 44 个格子:11 格红、11 格黄、22 格蓝。44 个格子上放下这些颜料,一共只有 1212 种排法。逐项排除:把红格与黄格看成固定在一起的一整块,这一块有两种朝向(红黄在前或黄红在前);这一块与两个蓝格一起摆放,33 个物件里两个蓝格完全相同,有 33 种摆法,于是红格与黄格紧挨着的排法共 2×3=62 \times 3 = 6 种,这些都不成立。剩下的 12−6=612 - 6 = 6 种都满足规矩。核对一遍:用 R、Y、B 分别代表红格、黄格、蓝格,这 66 种依次是 RBYB、RBBY、YBRB、YBBR、BRBY、BYBR。

数据范围

对于所有测试数据,保证:

  • 1≤q≤2001 \le q \le 200;
  • 0≤a,b,c0 \le a, b, c,且 1≤a+b+c≤20001 \le a + b + c \le 2000。

各测试点的约束如下:

测试点 各参数上界 特殊性质
1∼21\sim2 q=1q = 1,a+b+c≤8a+b+c \le 8 无
3∼63\sim6 q≤5q \le 5,a+b+c≤15a+b+c \le 15
7∼107\sim10 q≤50q \le 50,a+b+c≤500a+b+c \le 500
11∼1411\sim14 q≤50q \le 50,a+b+c≤2000a+b+c \le 2000
15∼1815\sim18 q≤200q \le 200,a+b+c≤2000a+b+c \le 2000
1919 A
2020 B
  • 特殊性质 A:每组询问里蓝色一格都不用。
  • 特殊性质 B:每组询问里红色一格都不用。
难度 未评定
通过率 —
尝试 0
通过 0
ID
3798
类型
传统题
Time Limit
1000ms
Memory Limit
512MiB
上传者