给定正整数 2≤n≤L≤R≤109,求:
k=LmaxRkmodn
将区间 [L,R] 划分为长度为 n 的段,在同一段内 kmodn 单调递增,且最大值为 n−1。
- 若 ⌊nL⌋=⌊nR⌋,说明 [L,R] 位于同一段内,取 k=R 时答案为 Rmodn;
- 否则,[L,R] 跨越至少一段,取 k=n⌊nR⌋−1 时答案为 n−1。
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n,l,r;
cin>>n>>l>>r;
cout<<(l/n==r/n?r%n:n-1)<<'\n';
return 0;
}