题目传送门
题意翻译
给定 n , k n,k n,k ( n , k ≤ 1 0 18 n,k\le 10^{18} n,k≤1018 )
回答 n m o d i , i ∈ [ 1 , k ] n \mod i,i\in \left[1,k\right] nmodi,i∈[1,k] 是否都不同。
题目解析
一道简单的结论题,我们发现,只有当 n m o d i = i − 1 , i ∈ [ 1 , k ] n\mod i=i-1,i\in \left[1,k\right] nmodi=i−1,i∈[1,k] 答案才成立。
代码:
#include<cstdio>
using namespace std;
typedef long long ll;
inline ll read(){
ll sum=0;
int flag=0;
char c=getchar();
while((c<'0'||c>'9')&&c!='-') c=getchar();
while('0'<=c&&c<='9'){
sum=(sum<<1)+(sum<<3)+(c^48);
c=getchar();
}
if(flag) return -sum;
return sum;
}
ll x,y,f;
int main(){
x=read(); y=read();
f=1;
for(int i=1;i<=y;i++)
if(x%i!=i-1){
f=0;
break;
}
if(f) printf("Yes\n");
else printf("No\n");
return 0;
}