一、小F的永久代币卡回本计划 问题描述 小F最近迷上了玩一款游戏,她面前有一个永久代币卡的购买机会。该卡片的价格为 a 勾玉,每天登录游戏可以返还 b 勾玉。小F想知道她至少需要登录多少天,才能让购买的永久代币卡回本。
测试样例 样例1:
输入:a = 10, b = 1 输出:10
样例2:
输入:a = 10, b = 2 输出:5
样例3:
输入:a = 10, b = 3 输出:4
解题思路: 问题理解: 需要计算小F至少需要登录多少天,才能让购买的永久代币卡回本。 每天登录游戏可以返还 b 勾玉,而卡片的价格为 a 勾玉。 数学公式: 需要计算 a 除以 b 的向上取整值,因为即使最后一天返还的勾玉不足以完全回本,也需要算作一天。 代码实现: 使用了 ceil 函数来实现向上取整。ceil 函数会将浮点数向上取整为最接近的整数。 (double)a / b 将整数除法转换为浮点数除法,确保 ceil 函数能够正确处理。 最终代码: #include #include using namespace std;
int solution(int a, int b) {
return ceil((double)a/b);
}
int main() { cout << (solution(10, 1) == 10) << endl; cout << (solution(10, 2) == 5) << endl; cout << (solution(10, 3) == 4) << endl; return 0; } ————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。