P8443 题解

liangbowen

2022-07-27 19:19:22

Solution

## 前言 [题目传送门!](https://www.luogu.com.cn/problem/P8443) [更好的阅读体验?](https://www.luogu.com.cn/blog/liangbowen/solution-p8443) 普及组月赛第一题。别的题解语言有点高深,我补篇题解。 ## 思路 显然,$\lfloor \dfrac{l}{x}\rfloor, \lfloor \dfrac{l+1}{x}\rfloor, \cdots, \lfloor \dfrac{r}{x}\rfloor$ 是**连续的整数**。 而且,显然有 $\operatorname{gcd}(c, c+1) = 1$。 换句话说,只要 $\lfloor \dfrac{l}{x}\rfloor \ne \lfloor \dfrac{r}{x}\rfloor$,结果就为 $1$。如果两者相等,答案就是 $\lfloor \dfrac{l}{x}\rfloor$ 啦。 ## 代码 ```cpp #include <iostream> #include <cstdio> using namespace std; int main() { int T; scanf("%d", &T); while (T--) { long long l, r, x; //本题唯一坑点,要记得开 long long。 scanf("%lld%lld%lld", &l, &r, &x); if (l / x != r / x) puts("1"); else printf("%lld\n", l / x); } return 0; } ``` 希望能帮助到大家!