记录编号 327552 评测结果 AAAAAAAAAAAAAAAAAAAAAA
题目名称 [POI 2001]反素数 最终得分 100
用户昵称 GravatarGROWL GOOD BOYส็ 是否通过 通过
代码语言 C++ 运行时间 0.024 s
提交时间 2016-10-22 10:01:45 内存使用 0.28 MiB
显示代码纯文本
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>

using namespace std;


typedef long long  LL;


int  prime[]={0,2,3,5,7,11,13,17,19,23,29,31};

const LL  INF=9999999999ll;

LL N,Ans,temp;

void DFS(LL data,int num,int op)
{
    if(num>11)return;
    if(temp<op)
    {
    	temp=op;
    	Ans=data;
    }
    if(temp==op&&Ans>data)
    {
    	Ans=data;
    }
    for(int i=1;i<=20;i++)
    {
        if(data*prime[num]>N)break;   
    	DFS(data*=prime[num],num+1,op*(i+1));
    }
}
int main()
{
    freopen("ant.in","r",stdin);
    freopen("ant.out","w",stdout);
    scanf("%lld",&N);
    Ans=INF,temp=0ll;
    DFS(1ll,1,1);
    printf("%lld",Ans);
    fclose(stdin);
    fclose(stdout);
	return 0;
}