zoukankan      html  css  js  c++  java
  • 反素数——http://www.zybbs.org/JudgeOnline/problem.php?id=1053

    对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。
    如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数。例如,整数1,2,4,6等都是反质数。
    现在给定一个数N,你能求出不超过N的最大的反质数么?


    先百度知道反素数性质

    性质一:一个反素数的质因子必然是从2开始连续的质数.

    因为最多只需要10个素数构造:2,3,5,7,11,13,17,19,23,29

    性质二:p=2^t1*3^t2*5^t3*7^t4.....必然t1>=t2>=t3>=....


    搜索。。。

    View Code
    #include<stdio.h>
    #include<math.h>

    int prim[11]={0,2,3,5,7,11,13,17,19,23,29};
    long long max=0,n,best=0;

    void dfs(int now,int t,long long all,int add)
    {
    if(all>n||t==0)return;

    if(add==max&&all<best)//约数相同时,best尽量小
    {
    best=all;
    }
    if(add>max)//约数大时,更新约数与best
    {
    max=add;
    best=all;
    }

    int i;
    for(i=1;i<=t;i++)
    {
    dfs(now+1,i,all*(long long )pow(1.0*prim[now],1.0*i),add*(i+1));
    }
    }

    int main()
    {
    int i;
    while(scanf("%lld",&n)!=EOF)
    {
    max=0;best=0;
    dfs(1,10,1,1);

    printf("%lld\n",best);
    }
    }



  • 相关阅读:
    flask_admin+flask_login 整合,jieba分词+echarts数据分析可视化
    古诗词网爬虫实现
    Flask admin Flask login 整合模板
    API网关Kong
    Flask添加新命令
    MyBatis连接MySQL8配置
    golang锁
    golang goroutine
    golang管道
    golang结构体
  • 原文地址:https://www.cnblogs.com/huhuuu/p/2243018.html
Copyright © 2011-2022 走看看