StarrySky 有 n 枚神奇的硬币(下标从 1 ~ n),每枚硬币具有固定的价值

,同时,商店中有 m 件物品(下标从 1 ~ m),每件物品都有一个固定的重量

。
在 StarrySky 的世界里,硬币的购买规则与现实世界不同,在他的世界里,只要满足

,StarrySky 即可顺利购买这件物品,但是,这枚硬币并不会被消耗。换句话说,如果当前硬币的价值为 val,那么,所有满足
)
的物品都会被购买。
对于同一件物品 i,相同的硬币只能购买这件物品不超过 1 次,但是不影响其它的硬币对这件物品的购买,即:1 号硬币可以选择购买第 i 件物品,同样的,第 n 号硬币也可以选择购买此件物品。
现在,StarrySky 希望用这 n 枚硬币购买尽可能多的物品。
显然,StarrySky 也作为一个 ACMer,不会用这个问题来麻烦大家,毕竟训练时间是宝贵的。但是,在用这 n 枚硬币以上述准则全部购买完物品之后,StarrySky 发现购买的物品实在太多了,JK 牌小汽车装不下了。因此,StarrySky 只好忍痛割爱,选择只购买这 m 件物品中最受欢迎的几件物品。
所谓最受欢迎是指:这 m 件物品中,被不同硬币所购买次数最多的物品。
显然,最受欢迎的物品可能不止有一件,所以,StarrySky 希望知道最受欢迎的物品的数量。由于现在的 StarrySky 已经搬物品搬到汗流浃背,实在写不动程序来解决这个问题,于是他向同为 ACMer 的你求救,希望你能帮帮 StarrySky,求出最受欢迎的物品的数量。