这是精巧的归纳一个观点 :
a%b =c ===> c <b
所以当 i== 1 c == 0
2 1
.... ..
我只想说 这个题目太皮了
Imp is watching a documentary about cave painting.
![](http://codeforces.com/predownloaded/d9/7e/d97ed0a1a6423a9ee519ef50c2aa5a1ca118adfa.png)
Some numbers, carved in chaotic order, immediately attracted his attention. Imp rapidly proposed a guess that they are the remainders of division of a number n by all integers i from 1 to k. Unfortunately, there are too many integers to analyze for Imp.
Imp wants you to check whether all these remainders are distinct. Formally, he wants to check, if all , 1 ≤ i ≤ k, are distinct, i. e. there is no such pair (i, j) that:
- 1 ≤ i < j ≤ k,
-
, where
is the remainder of division x by y.
The only line contains two integers n, k (1 ≤ n, k ≤ 1018).
Print "Yes", if all the remainders are distinct, and "No" otherwise.
You can print each letter in arbitrary case (lower or upper).
4 4
No
5 3
Yes
In the first sample remainders modulo 1 and 4 coincide.
#include<iostream> using namespace std; typedef long long ll ; #define f(i,l,r) for(int i=l;i<=r;++i) #define g(i,l,r) for(int i=l;i>=r;--i) int main(){ ll a,b; cin>>a>>b; bool flag = true; for(ll i = 1;flag && i<=b;++i) if(a%i!=i-1)flag =false; if(flag) cout<<"Yes"<<endl; else cout<<"No"<<endl; }