70pts求调
查看原帖
70pts求调
1270895
AK_NOIMPOS楼主2025/6/27 17:14

这里思路就是枚举+类似记忆化,70pts,有dalao能帮蒟蒻看看吗

#include <bits/stdc++.h>
using namespace std;
const int N=1e6+100;
int n;
int m;
int T;
map<int,int>ma,ma1;
map<int,map<int,int> >vis;
int main(){
	cin>>T;
	while(T--){
		cin>>n>>m;
		if(ma[n]<=m&&ma[n]!=0)cout<<"Yes"<<endl;
		else if(ma[n]!=0) {
			cout<<"No"<<endl;
		}
		else{
			bool flag=false;
			for(int i=max(ma1[n],1);i<=m;i++){
				int cnt=n%i;
				vis[n][cnt]++;
				if(vis[n][cnt]==2){
					ma[n]=i;
					flag=true;
					break;
				}
			}
			if(flag){
				cout<<"Yes"<<endl;
			}
			else{
				cout<<"No"<<endl;
				ma1[n]=m;
			}
		}
		
	}
	
	return 0;
}

2025/6/27 17:14
加载中...