在一个大型农业展览中,组织者展示了多种农作物,每种农作物都有不同的生长速度和生长需求。为了模拟最佳生长条件,组织者计划建造一系列“生长塔”。
每个生长塔由多层农作物组成,每层的农作物都满足其生长需求,并且与下一层的农作物相匹配。特别地,每层的农作物重量至少比上一层农作物重K单位。
组织者希望每个生长塔中的农作物数量尽可能多,同时保持塔的高度尽可能高。然而,他们面临一个限制:最多只能建造M个生长塔。
现在,组织者想知道在满足这些条件的情况下,他们最多可以有多少种不同的农作物参与生长塔的建造。
输入格式:
第一行包含三个整数N、M和K,分别表示农作物的种类数、最多可建造的生长塔数以及每层农作物之间重量差异的最小值。
接下来N行,每行包含两个整数:Wi和Di,分别表示第i种农作物的重量和生长需求。
输出格式:
输出一个整数,表示在满足条件的情况下,组织者最多可以有多少种不同的农作物参与生长塔的建造。
示例:
输入:
5 3 2
1 1
3 2
5 3
7 4
9 5
输出:
4
解释:
在这个例子中,有5种不同的农作物。组织者可以建造3个生长塔,每个塔包含重量差异至少为2的农作物。一种可能的方案是选择第1、2、4和5种农作物参与建造,这样每个塔中的农作物数量最多。因此,组织者最多可以有4种不同的农作物参与生长塔的建造。