bzoj1225
题解:
数论+报搜
首先套一个计算因子个数的公式
枚举一下这个数
代码:
#include<bits/stdc++.h>
using namespace std;
int n,ans[],res[],tmp[];
int pri[]={,,,,,,,,,,,,,,,,};
double mn=DBL_MAX,lg[];
void dfs(double x,int y,int z)
{
if (x>=mn)return;
if (y==)
{
mn=x;
memset(res,,sizeof(res));
for(int i=;i<=z-;i++)res[i]=tmp[i];
return;
}
if (z>)return;
for (int i=;(i+)*(i+)<=y;i++)
if (y%(i+)==)
{
if (i!=)
{
tmp[z]=i;
dfs(x+lg[z]*i,y/(i+),z+);
}
if ((i+)*(i+)!=y)
{
tmp[z]=y/(i+)-;
dfs(x+lg[z]*(y/(i+)-),i+,z+);
}
}
}
int main()
{
scanf("%d",&n);
for (int i=;i<=;i++)lg[i]=log(pri[i]);
dfs(,n,);
ans[]=ans[]=;
for (int i=;i<=;i++)
for (;res[i]>;res[i]--)
{
for (int j=;j<=ans[];j++)ans[j]*=pri[i];
for (int j=;j<=ans[];j++)ans[j+]+=ans[j]/,ans[j]%=;
if (ans[ans[]+]!=) ans[]++;
while (ans[ans[]]/!=)
ans[ans[]+]+=ans[ans[]]/,ans[ans[]]%=,++ans[];
}
for (int i=ans[];i>=;i--)printf("%d",ans[i]);
return ;
}
bzoj1225的更多相关文章
- 高精度+搜索+质数 BZOJ1225 [HNOI2001] 求正整数
// 高精度+搜索+质数 BZOJ1225 [HNOI2001] 求正整数 // 思路: // http://blog.csdn.net/huzecong/article/details/847868 ...
- 【BZOJ1225】求正整数(数论)
题意:对于任意输入的正整数n,请编程求出具有n个不同因子的最小正整数m. n<=50000 思路:记得以前好像看的是maigo的题解 n即为将m分解为质数幂次的乘积后的次数+1之积 经检验只需要 ...
- bzoj1225 [HNOI2001] 求正整数
1225: [HNOI2001] 求正整数 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 762 Solved: 313[Submit][Statu ...
随机推荐
- pandas 取消读取csv时默认第一行为列名
读取时默认第一行为列名 此时DataFrame的列名为第一行数据: 因为第一行为有效数据,故不可作为列名,要么重新起列名,要么使用默认序列列名: 取消默认第一行为列名 给 pd.read_csv() ...
- JavaScript类库汇总
日期处理Moment.js http://momentjs.cn/ http://momentjs.com/ nodejslinq,jslinq http://jslinq.codepl ...
- 关于RxJava背压
http://flyou.ren/2017/04/05/%E5%85%B3%E4%BA%8ERxJava%E8%83%8C%E5%8E%8B/?utm_source=tuicool&utm_m ...
- controller中两个方法之间共享一个变量LinkedHashMap
1:引用传递,创建一个变量,给两个线程都传递进去. 2:静态修饰 static 通过该修饰符说明,该变量只有一份, 所有线程共用一份. 例如下面的htmlidMap通过static变量修饰, up ...
- libgomp-4.8.5-28.el7_5.1.x86_64 is a duplicate with libgomp-4.8.5-4.el7.x86_64
列出重复的包 # package-cleanup --dupes 删除重复的包 # package-cleanup --cleandupes
- php根据路径获取文件名
<?php // 根据路径返回文件名 $path = 'J:\abc\defg\hijk\一个文件夹\lmn\opq'; $path = iconv("UTF-8", &qu ...
- SpringMVC—概述
mvc容器的实例化: http://blog.csdn.net/lin_shi_cheng/article/details/50686876 Spring的启动过程: 1: 对于一个web应用,其部署 ...
- Python 安装pytz
1. https://pypi.org/project/pytz/#files 2. 下载上图标黄的文件, 3. pip install 4. from pytz import ...
- Linux笔记 #05# 断开远程连接后保持程序运行
教程:Linux 技巧:让进程在后台可靠运行的几种方法 网上搜索了一下,方法很多,选用最流行的 screen 命令参考:http://man.linuxde.net/screen 1. 安装 root ...
- awk处理nmap扫描结果
接到个任务,要对大量的主机ip进行扫描: 扫描加过滤脚本贴到底下 #!/bin/bash ### use nmap scan aliyun echo "********Start scan* ...