1 条题解
-
0
G1017 [GESP202503 一级] 图书馆里的老鼠 题解
难度:1(GeekPi教学评定);知识点:向上取整、整数除法。
解题思路
每x小时啃坏一本书,经过y小时,只要已经开始啃下一本,该本就不再完整。被损坏的本数为向上取整y/x,即(y+x-1)/x,再从n中减去。
为什么正确
将时间分成长度为x的段,每个已开始的段对应一本受损书;上取整恰好统计已开始的段数。
易错点
题目问完整的书,没啃完但已经啃过的书也不完整;整除时不要多减一本。
复杂度
时间:O(1);额外空间:O(1)。
参考代码(C++17)
#include<bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n,x,y; cin>>n>>x>>y; cout<<n-(y+x-1)/x; }来源与说明
本题解为配套教学整理,非官方题解。题库使用自行生成的测试数据,5个测试点。
- 1