求助!暴力有两个点TLE
查看原帖
求助!暴力有两个点TLE
1066991
Revenge2024楼主2023/11/26 14:51
#include <math.h>
using namespace std;
int m,n,re=0;
bool gys(int a,int b){
	int k=a;
	while(a%k!=0||b%k!=0){
		k--;
		if(k<m) return false;
	}
	return k==m;
}
bool gbs(int a,int b){
	int k=a;
	while(k%a!=0||k%b!=0){
		k++;
		if(k>n) return false;
	}	
	return k==n;
}
int main(){
	int i,j;
	cin>>m>>n;
	for(i=m;i<=n;i=i+m){
		for(j=m;j<=n;j=j+m){
			if(n%j!=0||n%i!=0) continue; 
		//	if(i==j&&m!=n) continue;
			if(gys(i,j)&&gbs(i,j)){
				re++;
			}
		}
	}
	cout<<re;
	return 0;
}```
2023/11/26 14:51
加载中...