[luogu]P1463

[SDOI2005]反素数ant

——!x^n+y^n=z^n

题目描述

对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。

如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数。例如,整数1,2,4,6等都是反质数。

现在给定一个数N,你能求出不超过N的最大的反质数么?

输入输出格式

输入格式:

一个数N(1<=N<=2,000,000,000)。

输出格式:

不超过N的最大的反质数。

输入输出样例

输入样例1#:

1000

输出样例1#:

840


算术基本定理,质因数分解:

N=a1^k1*a2^k2*L*an^kn,约数个数:(k1+1)*(k2+1)*L*(kn+1)。

一开始以为贪心就行了,尽量多乘素数,后面发现...休想哦。40就过不了,唉,不过爆搜就可以过了呵呵...

记录当前的数st,当前搜到第几个素数(11个就很够了,再乘的话肯定存在前面某一种素数组合使其约数与当前相同,不过肯定是小的比较优啊),还有就是约数个数,约数相同的话要选择st小的,后面不叫反素数。

代码:

 //2017.10.30
 //dfs math
 #include<iostream>
 #include<cstdio>
 #include<cstring>
 using namespace std;
 typedef long long ll ;
 inline ll read();
 namespace lys{
     ]={,,,,,,,,,,,,,};
     ll ans=,n;
     int MAX;
     void dfs(ll st,int x,ll num){
         if(num>MAX||(num==MAX&&st<ans)){
             ans=st;
             MAX=num;
         }
         ;
         ll ;
         ) return ;
         while(base*st<=n){
             dfs(st*,1LL*(++i)*num);
             base*=pri[x];
         }
     }
     int main(){
         n=read();
         dfs(,,);
         printf("%lld\n",ans);
         ;
     }
 }
 int main(){
     lys::main();
     ;
 }
 inline ll read(){
     ll kk=,ff=;
     char c=getchar();
     '){
         ;
         c=getchar();
     }
     +c-',c=getchar();
     return kk*ff;
 }

[luogu]P1463 [SDOI2005]反素数ant[dfs][数学][数论]的更多相关文章

  1. Luogu P1463 [HAOI2007]反素数ant:数学 + dfs【反素数】

    题目链接:https://www.luogu.org/problemnew/show/P1463 题意: 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x ...

  2. 洛谷 P1463 [SDOI2005]反素数ant

    P1463 [SDOI2005]反素数ant 题目描述 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i< ...

  3. 洛谷 P1463 [SDOI2005]反素数ant && codevs2912反素数

    题目描述 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数.例如,整数1,2,4,6 ...

  4. P1463 [SDOI2005]反素数ant

    题意: 题解: 思维难度不高,考虑到n较大,而反质数个数较少 所以只要算出每个反质数即可 考虑如何计算,可以发现,我们只需枚举计算出约数有x个的最小数,再做一下判断即可 另外约数的个数=(a1+1)( ...

  5. BZOJ 1053: [HAOI2007]反素数ant dfs

    1053: [HAOI2007]反素数ant 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=1053 Description 对于任何正整 ...

  6. [BZOJ1053][SDOI2005]反素数ant 数学

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1053 假设这个最大的反素数为$x$,那么$1<p<x$中数的因子数都没有$x$ ...

  7. [SDOI2005]反素数ant

    题目描述 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数.例如,整数1,2,4,6 ...

  8. 洛谷 1463[SDOI2005] 反素数ant

    题目描述 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4. 如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数.例如,整数1,2,4,6 ...

  9. 【BZOJ】【1053】【HAOI2007】反素数ant

    搜索 经典搜索题目(其实是蒟蒻只会搜……vfleaking好像有更优秀的做法?) 枚举质数的幂,其实深度没多大……因为$2^32$就超过N了……而且质数不能取的太大,所以不会爆…… /******** ...

随机推荐

  1. 008-Spring Boot @EnableAutoConfiguration深入分析、内部如何使用EnableAutoConfiguration

    一.EnableAutoConfiguration 1.EnableAutoConfiguration原理 springboot程序入口使用注解@SpringBootApplication,Sprin ...

  2. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_13_使用字节流读取中文的问题

    编码格式右下角显示是UTF-8 前三个字节是你,后三个字节是好.一个汉字占用了三个字节 读一个字节让编程char类型 文件里面后面加上abc abc没有问题 所以java提供字符流.字符流一次读取一个 ...

  3. 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_02 泛型_3_定义和使用含有泛型的类

    创建一个类,添加一个name的属性,然后生成get和set 使用上面创建的类 使用泛型 所以我们取出来也是一个Object的类型 定义的时候规定的类型是Integer,所以这里setName设置的时候 ...

  4. Numpy和Pandas

    NumPy是高性能科学计算和数据分析的基础包.数据结构为ndarray,一般有三种方式来创建.ndarray是N-Dimensions-Array(N维数组)的简称,ndarray要求元素数据类型一致 ...

  5. X509格式的证书校验(基于GMSSL2019-06-15版本)

    实现X509格式证书的链式校验 // cert_public.cpp : Defines the exported functions for the DLL application. // #inc ...

  6. [转载]OpenSSL身份认证 RSA、ECC、SM2

    一.生成证书openSSL生成RSA证书1 生成自签CA 生成CA密钥genrsa -aes256 -passout pass:123456 -out ca_rsa_private.pem 20481 ...

  7. TP框架对数据库的基本操作

    数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是对数据的增删改的操作,一步步的讲述一下框架对数据库的操作 想要操作数据库,第一步必然是要:链接数据库 一.链接数据库 (1)找 ...

  8. docker--docker架构

    4 docker 架构 Docker uses a client-server architecture. The Docker client talks to the Docker daemon, ...

  9. css定位:相对定位、绝对定位、固定定位的区别与特性

    css定位:相对定位.绝对定位.固定定位的区别与特性 原文地址:http://www.qingzhouquanzi.com/106.html css定位常用的有以下三种: 使用了定位的共同特性: 这三 ...

  10. C#网络编程 多线程和高并发

    在任何 TCP Server 的实现中,一定存在一个 Accept Socket Loop,用于接收 Client 端的 Connect 请求以建立 TCP Connection. 在任何 TCP S ...