my code:
#include<bits/stdc++.h>
#define int long long
using namespace std;
inline bool isnum(char ch){return ch>='0'&&ch<='9';}
inline int read()
{
int x=0,f=1;char ch=getchar();
while (!isnum(ch)){if (ch=='-') f=-1;ch=getchar();}
while (isnum(ch)){x=x*10+ch-48;ch=getchar();}
return x*f;
}
inline void out(int x,char ch){
if(x<0){putchar('-');x=-x;}
if(x>9)out(x/10,'/');
putchar(x%10+'0');
if(ch=='l')printf("\n");
if(ch=='s')printf(" ");
}
inline int slen(string s){return s.size();}
int n=read(),l=read(),r=read(),ans=INT_MIN;
signed main()
{
for(int i=l/n;n*i<=r;i++){
if(n*i+n-1<=r)ans=n-1;
else ans=max(ans,r-n*i);
}
out(ans,'l');
return 0;
}
所以这真的只是因为没出数据卡我的问题还是另类解法/yiw