#6918. A.烧(BBQ)
A.烧(BBQ)
串烧(BBQ)
题目描述
中秋节前后,韬韬和朋友们决定去串烧店聚餐。他们共有 (M) 个人,每个人都点了若干串烧。上餐后,所有人的串烧被放在了一起。
请根据每个人的点单明细,计算店家漏上了几串、多上了几串。同一品项可能被点或送上多次,需要按数量逐一核对。
输入格式
第一行包含两个整数 (N,M),分别表示送上来的串烧数量和人数,满足 (1\le N\le10000)、(1\le M\le10)。
第二行包含 (N) 个整数 (X_i)((1\le X_i\le100)),表示送上来的串烧的品项编号。
接下来 (M) 行,每行表示一个人的点单明细:第一个整数 (P_j)((1\le P_j\le100))表示此人点的串烧数量,后面跟着 (P_j) 个整数 (Y_{j,k})((1\le Y_{j,k}\le100)),表示各串烧的品项编号。
输出格式
输出两个整数,用空格分隔:第一个是漏上的数量,第二个是多上的数量。
样例 1
输入
10 2
1 1 1 1 1 2 2 2 2 4
5 1 1 1 1 2
5 2 2 2 3 3
输出
2 2
说明
| 品项 | 实际点单 | 店家送上 | 核对结果 |
|---|---|---|---|
| 1 | 4 串 | 5 串 | 多上 1 串 |
| 2 | 4 串 | 数量正确 | |
| 3 | 2 串 | 0 串 | 漏上 2 串 |
| 4 | 0 串 | 1 串 | 多上 1 串 |
因此,漏上 (2) 串,多上 (2) 串。
样例 2
输入
5 1
1 2 3 4 5
4 1 2 3 4
输出
0 1
说明
品项 1 至 4 都已正确送上,品项 5 多上了 1 串。
评分说明
每组包含多笔测试数据,只有答对该组的全部数据才能获得对应分数。
| 测试组 | 分值 | 限制 |
|---|---|---|
| 第一组 | 30 分 | 品项编号只可能是 (1)、(2) 或 (3) |
| 第二组 | 70 分 | 无特殊限制 |
| 测试点编号 | 层级 | N | M | 特殊性质 | 标准输出 | 设计目的 |
|---|---|---|---|---|---|---|
| 1 | 弱数据 | 1 | 1 | 单件商品,库存与订单完全相同 | 0 0 |
覆盖最小规模与完全匹配 |
| 2 | 5 | 订单商品数为 0,含编号 100 | 0 5 |
覆盖空订单、纯剩余库存和编号上界 | ||
| 3 | 正常数据 | 3 | 多笔订单、重复商品、订单出现库存中没有的商品 | 5 0 |
覆盖纯缺货及跨订单累计 | |
| 4 | 12 | 4 | 同时存在恰好匹配、缺货和剩余 | 4 2 |
检验 less、over 的混合统计 |
|
| 5 | 强数据 | 200 | 10 | 商品编号覆盖 1~100,每笔订单 25 件,大量重复累计 |
50 0 |
覆盖全部计数槽及较大规模统计 |