首页 > 其他分享 >[AHOI2005]约数研究

[AHOI2005]约数研究

时间:2023-05-26 17:45:58浏览次数:33  
标签:约数 12 AHOI2005 22 研究 Samuel int

没错,数学也有分类了qaq,我之前学算法的时候妹学数学,今天算是被搞怕了(但还是不听ovo)

学会了两种方法,主要思想还是,对于每个i来说,他在从1-n中的贡献值是n/i,也就是1-n中约数含有它的数目是n/i(厉害吧,刚学的)
另外一种方法是筛法,说实话这个你应该想到的(恼),不优化会爆的(30分)

题目描述

科学家们在 Samuel 星球上的探险得到了丰富的能源储备,这使得空间站中大型计算机 Samuel II 的长时间运算成为了可能。由于在去年一年的辛苦工作取得了不错的成绩,小联被允许用 Samuel II 进行数学研究。

小联最近在研究和约数有关的问题,他统计每个正数 N 的约数的个数,并以 f(N) 来表示。例如 1212 的约数有 1,2,3,4,6,12,因此 (12)=6f(12)=6。下表给出了一些 (f(N) 的取值:

N112233445566
f(N) 11 22 22 33 22 44

现在请你求出:

f[i]的前n项和

输入格式

输入一个整数 n。

输出格式

输出答案。

输入输出样例

输入 #1
3
输出 #1
5

说明/提示

  • 对于 20%20% 的数据,
    //方法一:
    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
        long long res=0;
        int n;
        cin>>n;
        for(int i=1;i<=n;i++) res+=n/i;
        cout<<res;
    }
    //筛法
    #include<bits/stdc++.h>
    using namespace std;
    const int N=1000010;
    int f[N],n,res;
    int main()
    {
        cin>>n;
        for(int i=1;i<=n;i++)
        {
            for(int j=i;j<=n;j+=i) f[j]++;
            res+=f[i];
        }
        cout<<res;
        return 0;
    }

     

    ≤5000N≤5000;
  • 对于 100%100% 的数据,1≤≤1061≤N≤106。

标签:约数,12,AHOI2005,22,研究,Samuel,int
From: https://www.cnblogs.com/o-Sakurajimamai-o/p/17435402.html

相关文章

  • 4.1 最大公约数
    第一部曲:两种思路一种枚举一种利用辗转相除法,枚举可以选择从小到大也可以选择从大到小。第二部曲: 第三部曲:if(m<n)swap(m,n); k=m%n; while(k!=0) { m=n; n=k; k=m%n; } cout<<n;第四部曲:#include<iostream>//从小到大枚举#include<algorithm>usingnamespacestd;int......
  • Redmine之报表应用研究
    近来将RedMine的源代码下下来进行研究,主要目的是研究它的Report功能是如何实现的目前研究结果总结为几点:1)Remine界面上支持PDF,CSV,HTML输出,但没有单独的报表运行中心,只有在Issue及Gant界面有报表输出功能2)新建两个用户a和b,a用户在创建时默认语言选择“English”,b用户选择"Chinese(Si......
  • 杀戮尖塔实现细节研究(buff结算方式)
    buff结算方式结算阶段回合行动开始角色行动开始角色行动结束阵营行动开始阵营行动结束回合行动结束一回合=双方各行动一次=各方的角色都行动一次回合减少buff易伤、虚弱、脆弱这类回合减少buff,在“回合行动结束”才统一减少层数。回合减少buff在确保生效过......
  • 质数、约数
    质数相关一、算数基本定理任何一个大于1的正整数都能唯一分解成有限个质数的乘积写作:\[n=p_1^{c1}p_2^{c2}\dotsp_m^{cm}\]\[=\prod_{i=1}^mp_i^{ci}\]二、因数分布若存在一个正整数$n$为合数,则存在一个数$k$,满足$2$$\le$$k\le$$\sqrt{n}$且......
  • 基于深度学习的图像识别技术研究
    深度学习是一种机器学习技术,它模拟人类大脑的神经网络,通过多层神经网络对输入数据进行处理和学习,从而实现对复杂数据的高效识别和分类。基于深度学习的图像识别技术已经在各个领域得到广泛应用,包括人脸识别、自动驾驶、医学图像分析等。在图像识别领域,深度学习技术主要应用于图像......
  • 研究生计算机技术论文选题
    基于深度学习的图像识别技术研究基于区块链技术的数据安全与隐私保护云计算环境下的资源调度与优化算法研究人工智能在医疗领域的应用与发展基于大数据分析的智能交通系统设计与优化虚拟现实技术在教育领域的应用研究基于机器学习的自然语言处理技术研究基于物联网的智能......
  • 研究生计算机技术论文怎么写
    查到的回答:研究生计算机技术论文的写作步骤如下:研究题目选择:选择一个有足够研究价值的计算机技术问题作为研究题目。文献综述:对已有的相关文献进行综述,了解研究领域的研究现状、研究方法和研究成果。研究设计:设计研究方法、实验方案和数据处理方法等,明确研究的目的和方......
  • 行业报告 | 腾讯研究所:2023金融科技十大趋势
    文|BFT机器人近期,国家印发《数字中国建设整体布局规划》,提出建设数字中国是推进中国式现代化的重要引擎,要求强化数字中国的关键能力。党的二十大报告提出,“加快发展数字经济,促进数字经济和实体经济深度融合”,标志着未来金融科技将迈入高质量发展的新阶段。在数字中国的建设中,金......
  • Kubernetes(k8s)最大启动时长研究
    一、前言应用部署在Kubernetes(k8s)上,有些应用启动慢一些,没启动好就又被k8s重启了二、处理过程1.看日志[2023-05-2314:38:52.249]|-INFO|-[background-preinit]|-o.h.v.i.u.Version[0]|-[TID:N/A]|-HV000001:HibernateValidator6.1.7.Final[2023-05-2314:40:11.817]|-......
  • 最大公约数
    求任意两个正整数的最大公约数(GCD)。通过从1穷举求最大公约数:#include<iostream>usingnamespacestd;intmain(){ intm,n,a; cin>>m>>n; if(m<n) { inttemp=m; m=n; n=temp; } for(inti=1;i<=n;i++) { if(m%i==0&&n%i==0) { a=i; } } cout<<m&......