CF1765E.Exchange

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Exchange

题目描述

Monocarp 正在玩一款 MMORPG。在这款游戏中,有两种常用的货币——金币和银币。Monocarp 想为他的角色购买一把新武器,这把武器需要 nn 枚银币。不幸的是,现在 Monocarp 一枚硬币都没有。

Monocarp 可以通过完成任务来获得金币。每完成一个任务就能获得一枚金币。Monocarp 还可以通过游戏内的交易系统兑换货币。经过多天分析游戏经济系统,Monocarp 得出如下结论:他可以用 1 枚金币换取 aa 枚银币(即失去 1 枚金币,获得 aa 枚银币),也可以用 bb 枚银币购买 1 枚金币(即失去 bb 枚银币,获得 1 枚金币)。

现在,Monocarp 想计算,为了最终拥有至少 nn 枚银币(可以通过反复利用游戏内经济系统),他最少需要完成多少次任务。注意,Monocarp 可以不限次数地进行上述两种兑换操作(卖出金币换银币、用银币买金币)。

输入格式

第一行包含一个整数 tt1t1041 \le t \le 10^4),表示测试用例的数量。

每个测试用例包含一行,包含三个整数 nnaabb1n1071 \le n \le 10^71a,b501 \le a, b \le 50)。

输出格式

对于每个测试用例,输出一个整数,表示 Monocarp 最少需要完成的任务数。

说明/提示

在第一个样例中,Monocarp 应该完成 44 次任务,然后将 44 枚金币全部卖出,换得 100100 枚银币。

在第二个样例中,Monocarp 应该完成 400000400000 次任务,然后将 400000400000 枚金币全部卖出,换得 1000000010000000 枚银币。

在第三个样例中,Monocarp 应该完成 11 次任务,卖出这枚金币获得 5050 枚银币,再用 4848 枚银币买回一枚金币,然后再次卖出获得 5050 枚银币。这样他总共有 5252 枚银币。

在第四个样例中,Monocarp 应该完成 11 次任务,然后将获得的金币卖出,换得 5050 枚银币。

由 ChatGPT 4.1 翻译

样例

4
100 25 30
9999997 25 50
52 50 48
49 50 1
4
400000
1
1

在线编程 IDE

建议全屏模式获得最佳体验