1 条题解
-
0
练18.2 苹果和虫子
解题思路
经过 y 小时,被虫咬过的苹果为 ceil(y/x),正在吃的也不完整。完整数为 max(0,n-ceil(y/x))。
正确性说明
每开始一个 x 小时周期就破坏一个完整苹果,向上取整统计已开始的周期;剩余不能为负。
易错点
恰好吃完时不用额外扣下一只;x 为正才有周期意义。
复杂度
输入规模固定,时间 O(1),额外空间 O(1)。
参考代码(C++11)
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); long long n, x, y; cin >> n >> x >> y; cout << max(0LL, n - (y + x - 1) / x) << "\n"; return 0; }
- 1