P8807 [蓝桥杯 2022 国 C] 取模
题目描述
给定 n,mn, mn,m,问是否存在两个不同的数 x,yx,yx,y 使得 1≤x<y≤m1 \le x < y \le m1≤x<y≤m 且 n mod x=n mod yn \bmod x = n \bmod ynmodx=nmody。
输入格式
输入包含多组独立的询问。
第一行包含一个整数 TTT 表示询问的组数。
接下来 TTT 行每行包含两个整数 n,mn,mn,m,用一个空格分隔,表示一组询问。
输出格式
输出 TTT 行,每行依次对应一组询问的结果。如果存在,输出单词 Yes
;如果不存在,输出单词 No
。
输入输出样例 #1
输入 #1
3
1 2
5 2
999 99
输出 #1
No
No
Yes
说明/提示
对于 20%20\%20% 的评测用例,T≤100T \le 100T≤100,n,m≤1000n, m \le 1000n,m≤1000;
对于 50%50\%50% 的评测用例,T≤10000T \le 10000T≤10000,n,m≤105n, m \le 10^5n,m≤105;
对于所有评测用例,1≤T≤1051\le T \le 10^51≤T≤105,1≤n≤1091\le n\le 10^91≤n≤109,2≤m≤1092\le m \le 10^92≤m≤109。
蓝桥杯 2022 国赛 C 组 C 题。
C++实现
#include<bits/stdc++.h>
using namespace std;
int t,n,m;
void inline slove(){
cin>>n>>m;
if(m>n+1)
printf("Yes\n");
else{
for(int i=1;i<=m;i++)
if(n%i!=i-1){
printf("Yes\n");
return ;
}
printf("No\n");
}
}
int main(){
cin>>t;
while(t--)slove();
}
后续
接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容