Description

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

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

不超过N的最大的反质数。
Sample Input
1000

Sample Output
840

终于忍住没看题解,自己成功想出一个题

先筛质数,首先我们知道分解质因数后 i=p1^s1*p2^s2...pk^sk;那么g(i)=(s1+1)*(s2+1)*(s3+1)...(sk+1)

所以我们枚举质数的指数,直接枚举不太好

我们可以发现一个性质,反质数的各个指数一定是不上升的,因为上升的情况我们可以翻转上升的那一段,使得g不变i变小,这个时候搜索就无压力了

一开始没注意,其实前十个质数相乘已经很大了,我们只要前十个就行了

还有就是,要记录现在ans的g,如果有一样的g,要选小的那个

 const
zhi:array[..]of integer=(,,,,,,,,,);
var
n,tot,ans,num:longint; procedure try(x:int64;y,z,k:longint);
var
i:longint;
begin
if (num<k) or ((num=k) and (x<ans)) then
begin
ans:=x;
num:=k;
end;
for i:= to y do
begin
x:=x*zhi[z];
if x>n then exit;
try(x,i,z+,k*(i+));
end;
end; begin
read(n);
try(,n,,);
write(ans);
end.

1053: [HAOI2007]反素数ant - BZOJ的更多相关文章

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

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

  2. 【BZOJ】1053: [HAOI2007]反素数ant

    1053: [HAOI2007]反素数ant Description: g(x)表示x的约数个数,反素数:对于任意的i (i < x),均有g(i) < g(x),则x为反素数:现在输入不 ...

  3. bzoj 1053: [HAOI2007]反素数ant 搜索

    1053: [HAOI2007]反素数ant Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1497  Solved: 821[Submit][Sta ...

  4. BZOJ 1053 [HAOI2007]反素数ant

    1053: [HAOI2007]反素数ant Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1948  Solved: 1094[Submit][St ...

  5. 【BZOJ 1053】 1053: [HAOI2007]反素数ant (反素数)

    1053: [HAOI2007]反素数ant Description 对于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6)=4.如果某个正整数x满足:g(x)>g(i) 0&l ...

  6. BZOJ(8) 1053: [HAOI2007]反素数ant

    1053: [HAOI2007]反素数ant Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4118  Solved: 2453[Submit][St ...

  7. 1053: [HAOI2007]反素数ant

    1053: [HAOI2007]反素数ant Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3480  Solved: 2036[Submit][St ...

  8. BZOJ 1053 [HAOI2007]反素数ant 神奇的约数

    本蒟蒻终于开始接触数学了...之前写的都忘了...忽然想起来某神犇在几个月前就切了FWT了... 给出三个结论: 1.1-N中的反素数是1-N中约数最多但是最小的数 2.1-N中的所有数的质因子种类不 ...

  9. BZOJ 1053 [HAOI2007]反素数ant(约数个数)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1053 [题目大意] 于任何正整数x,其约数的个数记作g(x).例如g(1)=1.g(6 ...

随机推荐

  1. 1172 Hankson 的趣味题

    1172 Hankson 的趣味题 2009年NOIP全国联赛提高组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Descrip ...

  2. jquery easyui datagrid 分页 详解(java)

    1.首先引入easyui包,可以在官方网站下载,http://www.jeasyui.com/download/index.php <link rel="stylesheet" ...

  3. php学习-快速开发框架thinkphp-day1

    以下操作针对windows系统. 1.下载thinkphp3.23-all并解压 官方网站: http://www.thinkphp.cn/down.html 2.开发工具使用phpstorm htt ...

  4. 初话C++模板【用自己的话,解释清楚这些】

    用自己的话解释清楚C++的模板编程 模板编程是为了解决什么问题而出现的? 提高代码的重用性,提高代码的利用率. 泛型编程的一种实现. 模板的精神是: 类型参数化. 模板的实现 模板分为:函数模板.类模 ...

  5. Mac下安装Twig模版引擎的方法

    本人收集了几种方法: 安装前: twig需要依赖PHP 5.2.7 才能运行. 1 通过composer安装(2种) 方法一: 首先确保你已经安装了composer,如果没有安装,可以参考https: ...

  6. Java 对于继承的初级理解

    概念:继承,是指一个类的定义可以基于另外一个已存在的类,即子类继承父类,从而实现父类的代码的重用.两个类的关系:父类一般具有各个子类共性的特征,而子类可以增加一些更具个性的方法.类的继承具有传递性,即 ...

  7. Ubuntu gedit 折叠插件

    Ubuntu Kylin 14.04 gedit  - Version 3.10.4 (as same as all version of gedit 3.x ) Attention: this pl ...

  8. java运算符新用法和^新认识

    public class Demo1 { public static void main(String[] args) { boolean t = false | true; System.out.p ...

  9. 最常用的MySQL命令语句

    e良师益友网导读:MySQL数据库是应用最广的数据库之一,在MySQL数据库中有各种各样的命令调用语句,在平常工作中非常实用的命令,对于初学者来说,掌握文中的MySQL命令语句,是非常实用的,下面我们 ...

  10. Android Animation ---TranslateAnimation

    if(stopBtn.getVisibility()==View.VISIBLE){ Animation animation_stop = new TranslateAnimation( Animat ...