logo AlgoBeat OnlineJudge
登录 注册

#10275. [ABC215H] Cabbage Master

内存限制:1024 MiB 时间限制:3000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: AlgoBeat 官方账号

题目描述

卷心菜农户高桥君种植了 个品种(从 )的卷心菜。高桥君拥有品种 的卷心菜 个()。这里,所有的卷心菜都是可以区分的

作为卷心菜的批发对象,有 个公司(从 ),公司 )下单了 个卷心菜。

每个公司可以收购的卷心菜品种各不相同。对于所有的 组合():

  • 时,品种 的卷心菜可以出货给公司
  • 时,品种 的卷心菜不能出货给公司

如果高桥君能够合理分配所有卷心菜的出货对象,使得对每个公司 )都能出货不少于 个卷心菜,则他可以获得“卷心菜大师”的称号。

すぬけ君为了让高桥君无论如何都无法获得“卷心菜大师”的称号,可以选择吃掉 个或更多的卷心菜。すぬけ君不喜欢卷心菜,他会选择吃掉的卷心菜数量最少的方案。

请输出すぬけ君需要吃掉的卷心菜的最少数量,以及吃掉卷心菜的方案数对 取模的结果。

注意,吃掉卷心菜的方案不同,指的是存在某个卷心菜在一种方案中被吃掉,而在另一种方案中没有被吃掉。这里要注意,即使是同一品种的不同卷心菜也是可以区分的。

输入格式

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

输出格式

请输出すぬけ君需要吃掉的卷心菜的最少数量 ,以及吃掉卷心菜的方案数对 取模的结果 ,用空格隔开。

样例

输入 #1

3 2
2 2 5
3 4
1 0
1 1
0 1

输出 #1

2 6

输入 #2

1 1
3
4
1

输出 #2

0 1

输入 #3

1 3
100
30 30 30
1 1 1

输出 #3

11 892328666

数据范围与提示

限制条件

  • 对于任意 ,存在某个 使得
  • 输入均为整数

样例解释 1

为了让高桥君无法成为卷心菜大师,すぬけ君需要吃掉 个卷心菜。以“品种 的第 个卷心菜”记作 ,すぬけ君可以吃掉的卷心菜组合有如下 种:

样例解释 2

有时,即使すぬけ君一颗卷心菜都不吃,高桥君也无法成为卷心菜大师。这时,すぬけ君需要吃掉的卷心菜数量为 ,吃掉卷心菜的方案数为 (即什么都不吃)。

样例解释 3

请注意,吃掉卷心菜的方案数需要对 取模后输出。

由 ChatGPT 4.1 翻译