acwing198反素数(题解)

这篇具有很好参考价值的文章主要介绍了acwing198反素数(题解)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

如果某个正整数 x满足:对于任意的小于 x 的正整数 i,都有 g(x)>g(i),则称 x为反素数。

例如,整数 1,2,4,61,2,4,6 等都是反素数。

现在给定一个数 N,请求出不超过 N 的最大的反素数。

输入格式

一个正整数 N。

输出格式

一个整数,表示不超过 N 的最大反素数。

数据范围

1≤N≤2∗109

输入样例:
1000
输出样例:
840

思路: 

最大反素数(我设为x)=拥有最多约数的一批数中的最小数。

如果x不是拥有最多约数,x1拥有最多约数:

假如x1<x,不符合反素数定义;x1>x,x不是最大的反素数。

任意正整数n=(x有k种质因子,pi是第i种质因子,ci是pi的次数)

x的质因子分解会是{2,3,5,7,11,13,17,23,29}的连续质因子的组合,并且c1>=c2>=c3>=c4.....并且c1+c2+c3+...c10<30.

如果x的质因子分解不是连续的,则较大的质因子可以被缺少的质因子替代,则存在x1<x,x1和x拥有相同的约数个数。

x的质因子如果有超过29的,2*3*5...*31>2*1e9;

c1>=c2>=c3>=c4.....如果不满足,比如c3>c1,那么将c3,c1调换,获得x1<x,x1和x拥有相同的约数个数。

2^31>2*1e9

所以我们得知:

x的质因子分解会是{2,3,5,7,11,13,17,23,29}的连续质因子的组合,并且c1>=c2>=c3>=c4.....

深搜dfs即可;

代码:

#define _CRT_SECURE_NO_WARNINGS 
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<cstring>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<utility>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<math.h>
#include<unordered_map>
#include<map>
using namespace std;
#define LL  long long
const int N = 1e6 + 1000;
const long long  mod = 1e9 + 7;
#define  rep(i,a,b) for (int i = a; i <= b; i++) 
#define per(i, a, b) for(int  i=a;i>=b;i--)
LL n, mxin=1e18,cnt,y;
int a[20] = { 0,2,3,5,7,11,13,17,19,23,29};
unordered_map<int, int> p;
void dfs(LL no, LL w, int last,LL yue)//w是x,last是一个选的次数,yue是总约数个数。
{
    if (yue > cnt||yue==cnt&&w<mxin)
    {
        mxin = w;
        cnt = yue;
    }
    if (no == 10) return;
      LL x = a[no];
    for (int i = 1; i <= last; i++)
    {
        if (w * x > n)  break;
         dfs(no + 1, w*x, i, yue*(i+1));
        x *= a[no];
    }
}
int main()
{
    cin >> n;
    dfs(1, 1, 31,1);
    cout << mxin << endl;
    return 0;
}文章来源地址https://www.toymoban.com/news/detail-729179.html

到了这里,关于acwing198反素数(题解)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第二讲:数据结构 AcWing 826. 单链表

    笔试的题目大部分 大部分涉及到链表都是十万级别的 用数组的方式创建链表速度很快,不会超时,而如果用new 一个结构体的话 大部分就是比较慢的 所以不建议使用 数组模拟单链表 单链表在笔试题中用的最多是 领接表 领接表最多的应用是存储数和图 双链表 最多的应用就

    2024年02月19日
    浏览(41)
  • [Go版]算法通关村第十三关黄金——数字数学问题之数论问题(最大公约数、素数、埃氏筛、丑数)

    题目链接:LeetCode-1979. 找出数组的最大公约数 辗转相除法其核心部分为:若r 是a ÷ b的余数,则 gcd(a, b)=gcd(b, r) 题目链接:LeetCode-204. 计数质数 如果 x 是质数,那么大于 x 的 x 的倍数 2x,3x,… 一定不是质数。 时间复杂度分析: 外层循环的迭代次数是 n-2,即 O ( n ) O(n) O ( n ) 次

    2024年02月11日
    浏览(39)
  • 【第十五课】数据结构:堆(acwing-839模拟堆 / ph和hp数组的映射关系 /c++代码 )

    目录 注意点  代码如下  上篇已经详细解释过堆的内容,需要可以回顾一下。 【第十五课】数据结构:堆 这里关注这道题提出几个注意点。  这道题有几个需要注意的点: ①没有事先给出完整的数组,而是靠我们一次次操作进行插入。因此,要定义一个size变量记录插入数

    2024年01月25日
    浏览(40)
  • 【LeetCode】数据结构题解(6)[回文链表]

    所属专栏:玩转数据结构题型 博主首页:初阳785 代码托管:chuyang785 感谢大家的支持,您的点赞和关注是对我最大的支持!!! 博主也会更加的努力,创作出更优质的博文!! 关注我,关注我,关注我,重要的事情说三遍!!!!!!!! 回文链表 给定一个链表的 头节点

    2024年02月03日
    浏览(48)
  • 【LeetCode】数据结构题解(5)[分割链表]

    所属专栏:玩转数据结构题型 博主首页:初阳785 代码托管:chuyang785 感谢大家的支持,您的点赞和关注是对我最大的支持!!! 博主也会更加的努力,创作出更优质的博文!! 关注我,关注我,关注我,重要的事情说三遍!!!!!!!! 分割链表 给你一个链表的头节点

    2024年02月04日
    浏览(49)
  • 【LeetCode】数据结构题解(13)[设计循环链表]

    所属专栏:玩转数据结构题型❤️ 🚀 博主首页:初阳785❤️ 🚀 代码托管:chuyang785❤️ 🚀 感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️ 🚀 博主也会更加的努力,创作出更优质的博文!!❤️ 🚀 关注我,关注我,关注我,重要的事情说三遍!!!!!

    2024年02月13日
    浏览(57)
  • 【LeetCode】数据结构题解(12)[用栈实现队列]

    所属专栏:玩转数据结构题型❤️ 🚀 博主首页:初阳785❤️ 🚀 代码托管:chuyang785❤️ 🚀 感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️ 🚀 博主也会更加的努力,创作出更优质的博文!!❤️ 🚀 关注我,关注我,关注我,重要的事情说三遍!!!!!

    2024年02月13日
    浏览(42)
  • 【LeetCode】数据结构题解(11)[用队列实现栈]

    所属专栏:玩转数据结构题型❤️ 🚀 博主首页:初阳785❤️ 🚀 代码托管:chuyang785❤️ 🚀 感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️ 🚀 博主也会更加的努力,创作出更优质的博文!!❤️ 🚀 关注我,关注我,关注我,重要的事情说三遍!!!!!

    2024年02月13日
    浏览(39)
  • 初等数论——素数,逆元,EXGCD有关

    设整数 (pne 0,pm 1) 。如果 (p) 除了平凡约数以外没有其他约数,那么称 (p) 为素数(不可约数)。 若整数 (ane 0,pm 1) 且 (a) 不是素数,则称 (a) 为合数。 ——————OI Wiki 如何判断一个数 (x) 是不是质数? 很显然我们可以暴力的枚举 (1) 到 (sqrt{x}) 来看是否整除

    2024年02月05日
    浏览(36)
  • 【LeetCode】数据结构题解(9)[复制带随机指针的链表]

    所属专栏:玩转数据结构题型❤️ 🚀 博主首页:初阳785❤️ 🚀 代码托管:chuyang785❤️ 🚀 感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️ 🚀 博主也会更加的努力,创作出更优质的博文!!❤️ 🚀 关注我,关注我,关注我,重要的事情说三遍!!!!!

    2024年02月11日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包