Problem C: 【2021基础】烧菜

Memory Limit:256 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:148 Solved:55

Description

X 正在指挥 M 个机器人做一道家常菜:白灼青菜。

把一根青菜烧成菜肴需要两个步骤:洗菜和水煮。显然,一根青菜不可能同时被清洗和  水煮,也不可能先被水煮后被清洗。

现在小 X 告诉你他是怎么指挥的。每当一个机器人空下来:

· 如果有青菜还没被清洗,就让这个机器人清洗这根青菜

· 否则如果有青菜还没被水煮,就让这个机器人水煮这根青菜

· 都没有就让这个机器人关机

现在一共需要把 N 根青菜烧成菜肴,任何一个机器人清洗都要花 A 分钟,水煮要花 B

分钟。小 X 想请你告诉他多少分钟后所有菜能被烧好。

Input

第一行 4 个正整数 N,M,A,B,含义见问题描述。

Output

输出 1 行包含一个整数,表示多少分钟后所有菜能被烧好。

Sample Input Copy

3 2 9 5

Sample Output Copy

23

HINT

样例 1 解释

为了方便说明,把机器人标号为 1 号机器人和 2 号机器人;把青菜标号为 1 号、2 号、

3 号青菜。实际上,机器人间是没有区别的,青菜间也是没有区别的。

0 分钟,1 号机器人开始洗 1 号青菜,2 号机器人开始洗 2 号青菜。

9 分钟,1 号机器人开始洗 3 号青菜,2 号机器人开始煮 1 号青菜。

14 分钟,2 号机器人开始煮 2 号青菜。

18 分钟,1 号机器人开始煮 3 号青菜。 19 分钟,2 号机器人关机。

23 分钟,所有菜都被烧好了,1 号机器人关机。

 

数据范围

本题共有 20 个测试点,每个测试点 5 分。

对于测试点 1-10 1<=N,M,A,B<=50 对于测试点 11-20:1<=N,M,A,B<=2000

对于测试点 1,2,11,12:M>N,即机器人比青菜多对于测试点 3,4,13,14:M=1,即只有个机器人

对于测试点 5,6,15,16:A=B,即两个步骤需要的时间相同



Source/Category