Module: 按答案进行二分查找


Problem

3 /6


砍伐森林

Problem

农夫尼古拉雇用了两名伐木工人:德米特里和费多尔来砍伐森林,那里应该是一片玉米地。 X 棵树生长在森林里。

德米特里每天砍 A 棵树,但每隔 K 天他就休息,一棵树都没砍。因此,Dmitry 在第 K2K3K 等日休息。

Fedor 每天砍伐 B 棵树,但每隔 M 天他就休息,一棵树都没砍。因此,Fedor 在第 M2M3M 等日休息。

伐木工人并行工作,因此,在他们都没有休息的日子里,他们砍伐 A + B 树,而在只有 Fedor — A 树,在只有德米特里的日子里 — B 树。在两个伐木工人休息的日子里,一棵树都没有被砍倒。

农民尼古拉想知道伐木工需要多少天才能砍掉所有的树木,然后他才能播种玉米地。要求编写一个程序,给定整数 AKBMX 决定了森林中所有树木被砍伐需要多少天。

输入: 输入五个以空格分隔的整数:A, K, BMX (\(1 <= A,\ B <= 10^9 \)< /span> , \(2 <= K,\ M <= 10^{18}\), \ (1 <= X <= 10^{18}\))。

输入: 打印单个整数 —所需的天数。
 

例子
<头> <日># <正文>
举例说明
在上面的例子中,伐木工人在 7 天内砍倒了 25 棵树,如下所示:
- 第一天:Dmitry砍倒2棵树,Fedor砍倒3棵树,共计5棵树;
- 第2天:Dmitry砍2棵树,Fedor砍3棵树,共10棵;
- 第三天:Dmitry 砍了 2 棵树,Fedor 休息,总共 12 棵树;
- 第四天:Dmitry 休息,Fedor 砍了 3 棵树,总共 15 棵树;
- 第5天:Dmitry砍2棵树,Fedor砍3棵树,共20棵树;
- 第6天:Dmitry砍了2棵树,Fedor休息了,总共22棵树;
- 第7天:Dmitry砍倒2棵树,Fedor砍倒剩下的1棵树,总共砍倒25棵树。
 
输入 输出
1 2 4 3 3 25 7