植物大战僵尸
Time Limit:1000MS Memory Limit:65536K
Total Submit:0 Accepted:0
Description
作为一个实验室,仅在里面编程序显得很单调,为此胖子也经常在实验室做一些物理、化学、生物等实验。一次他受到“植物大战僵尸”游戏的启发,杂交出了能生产金币的植物!这种植物刚开始每株一天能生产K个金币,这样经过D天,胖子就能得到K *D个金币了。(-_-)但是胖子想要得到更多的金币。每天的工作结束时,胖子可以花费P * X个金币对所有植物进行杂交改良,使之一天能多生产X个金币;也可以花费P *
Y个金币培育出Y株新植物(这Y株新植物的生产能力与其他植物一样)。
一开始胖子只有N株每天能生产K个金币的植物,他想通过这些植物赚到M个金币,最少需要几天呢?
注:可以认为培育新植物或者是进行杂交能瞬间完成,即不占用轮次。
Input
输入数据第一行是一正整数T(0<T≤30),表示有T组测试数据。
每组测试数据只有一行,包括四个整数N, K, P, M(0<N, K, P≤100, 0<M≤1000000000),意义如上文描述。
Output
对于每组测试数据,输出一个整数D,表示通过这些植物赚到M个金币最少要D天。
Sample Input
4
2 1 2 10
2 1 2 9
5 4 15 100
1 1 100 1000000000
Sample Output
4
3
5
272
Source