若 则任务已经完成;
否则,若 则任务无法完成;(做不了任何事情)
否则,由于最终要消除恰好 个硬币,每次操作恰好消除 个硬币,只需要判断 是否能整除 即可。
#include<cstdio>
int init(){
char c = getchar();
int x = 0, f = 1;
for (; c < '0' || c > '9'; c = getchar())
if (c == '-') f = -1;
for (; c >= '0' && c <= '9'; c = getchar())
x = (x << 1) + (x << 3) + (c ^ 48);
return x * f;
}
void print(int x){
if (x < 0) x = -x, putchar('-');
if (x > 9) print(x / 10);
putchar(x % 10 + '0');
}
int main(){
int n = init(), m = init();
if (n == 1) puts("Yes");
else if (m == 1) puts("No");
else puts((n-1) % (m-1) == 0 ? "Yes" : "No");
}