虽然过了但是疑惑
查看原帖
虽然过了但是疑惑
917683
rnf5114楼主2023/12/25 23:26
#include <iostream>
#define int unsigned long long
using namespace std ;
int p[15]={0,2,3,5,7,11,13,17,19,23,29,31},n,ans=2e9+10,num;
void dfs(int x,int bian,int m,int shang){
	if(bian>11)
		return ;
	if(x>n)
		return ;
    if(m>num||(m==num&&x<ans)){
        ans=x;
		num=m;
    }
    int i=0,tmp=1;
    while(i<shang){
    	i++;
    	tmp*=p[bian];
        if(x<=n)
            dfs(x*tmp,bian+1,m*(i+1),i);
    }
    return ;
}
signed main(){
   	cin>>n;
    dfs(1,1,1,30);
    if(ans!=2e9+10)
    	cout<<ans;
    else
    	cout<<1;
}

为啥这份代码AC但是改成# define int long long就70

2023/12/25 23:26
加载中...