CF2257E Busy Beaver
题目描述
河狸创立了一家名为“忙碌的河狸”的建筑公司。现在,为了提升公司声誉,它需要建造尽可能高的建筑。
公司初始资金为 $x$ 根胡萝卜(对河狸来说是一种非常珍贵的货币),并有 $n$ 个可供施工的项目。每个项目都分配了独立的场地,目前尚未建造任何建筑。一个建筑项目由一系列建造下一层楼层的合同表示。要建造第 $i$ 栋建筑的第 $j$ 层,需要花费 $a_{i,j}$ 根胡萝卜;完工后,公司立即获得 $b_{i,j}$ 根胡萝卜,这些收入将加入预算,公司可以用它们来建造同一栋建筑的更高楼层,或用于其他项目。由于公司还年轻,并非所有合同都一定盈利;换句话说,可能出现 $a_{i,j} > b_{i,j}$。
河狸聘请你来规划公司的行动方案。你可以选择按什么顺序建造哪些楼层。注意,不必完成所有项目,甚至不必开始某些项目。此外,在建造同一栋建筑的楼层之间,允许完成任意数量与该建筑无关的合同。主要目标是——建造尽可能高的建筑。
输入格式
每个测试包含多个测试用例。第一行包含测试用例数 $t$($1 \le t \le 3 \cdot 10^4$)。接下来是每个测试用例的描述。
每个测试用例的第一行包含两个整数 $n$ 和 $x$——分别表示建筑项目数量和初始资金($1 \le n \le 2 \cdot 10^5$;$0 \le x \le 10^{18}$)。
接下来是 $n$ 个项目的描述。第 $i$ 个项目描述的第一行包含整数 $m_i$——该建筑可建造的最大楼层数($1 \le m_i \le 2 \cdot 10^5$)。
项目描述的第二行包含 $m_i$ 个整数 $a_{i,1}, a_{i,2}, \ldots, a_{i,m_i}$——建造各楼层的花费。第三行包含 $m_i$ 个整数 $b_{i,1}, b_{i,2}, \ldots, b_{i,m_i}$——建造各楼层的收益($0 \le a_{i,j}, b_{i,j} \le 10^9$)。
保证所有测试用例的 $m_i$ 之和不超过 $2 \cdot 10^5$。
输出格式
对于每组输入数据,输出两个数——能够建造的最高建筑的高度(以楼层数计),以及能够达到该高度且编号最小的建筑编号。
说明/提示
在第一组数据中,资金足够依次建造唯一一栋建筑的全部 $4$ 层。
在第二组数据中,需要先建造第二栋建筑的第一层,从中获得 $2$ 根胡萝卜,之后才能建造第一栋建筑的两层楼。