博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[BZOJ 1053] 反素数
阅读量:4646 次
发布时间:2019-06-09

本文共 675 字,大约阅读时间需要 2 分钟。

Link:

Solution:

关键要看出几个性质:

1、虽然$2e9$很大,但最多也只能由前12个素数组成

2、对于每一个“反素数”,随着质因数的增大,系数必然减小

(否则可将两质因数交换,得到的值必然更小)

 

接下来直接$dfs$即可

Code:

#include 
using namespace std;typedef long long ll;ll n,res=1,g=1;int pri[15]={
0,2,3,5,7,11,13,17,19,23,29,31,37};void dfs(int dep,ll cur,int cnt,int top){ if(dep==12) { if((cur>res&&cnt>g)||(cur<=res&&cnt>=g)) res=cur,g=cnt; return; } ll t=1; for(int i=0;i<=top;i++) { dfs(dep+1,cur*t,cnt*(i+1),i); t*=pri[dep];if(cur*t>n) return; }}int main(){ scanf("%lld",&n); dfs(1,1,1,30); printf("%lld",res); return 0;}

 

转载于:https://www.cnblogs.com/newera/p/9250609.html

你可能感兴趣的文章
MySQL 索引知识整理(创建高性能的索引)
查看>>
C++动态链接库方法调用
查看>>
全屏滚动页面的原理
查看>>
SICP习题 1.22(素数)
查看>>
字符串格式化,自动化属性赋值
查看>>
mysql主从复制
查看>>
Linux(CentOS)下同时启动两个tomcat
查看>>
C++ 头文件
查看>>
CUDA线程
查看>>
poj 3628 Bookshelf 2
查看>>
wpf随笔
查看>>
leetcode(329)矩阵中的最大递增路径
查看>>
安装1.4.2版本的Django
查看>>
Linux下设置开机自启动Tomcat
查看>>
Jrebel for Android 安装使用
查看>>
Django框架restful序列化get/post/delete/put请求接口设计(高级版)
查看>>
携程greenlet模块使用
查看>>
测试人员如何逃过“背锅侠”宿命?
查看>>
Leetcode: Multiply Strings
查看>>
DOM—addEventListener() & removeEventListener()
查看>>