UVa 884 – Factorial Factors

UVa 884 – Factorial Factors

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

题目:输出n!中素数因数的个数。

分析:数论。这里使用欧拉筛法计算素数,在计算过程中求解就可以。

            传统筛法是利用每一个素数,筛掉自己的整数倍;

            欧拉筛法是利用当前计算出的全部素数,乘以当前数字筛数;

            所以每一个前驱的素椅子个数一定比当前数的素因子个数少一个。

说明:重新用了“线性筛法”。

#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>

using namespace std;

int prime[1000001];
int visit[1000001];
int numbe[1000001];
int sums[1000001];

int main()
{
	//筛法计算素数 
	memset(visit, 0, sizeof(visit));
	memset(numbe, 0, sizeof(numbe));
	int count = 0;
	for (int i = 2 ; i < 1000001 ; ++ i) {
		if (!visit[i]) {
			prime[count ++] = i;
			numbe[i] = 1;
		}
		for (int j = 0 ; j < count && i*prime[j] < 1000001 ; ++ j) {
			visit[i*prime[j]] = 1;
			numbe[i*prime[j]] = numbe[i]+1;
		}
		sums[i] = sums[i-1] + numbe[i];
	}
	
	int n;
	while (~scanf("%d",&n))
		printf("%d\n",sums[n]);
		
    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117925.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 编码 ansi_ansi编码和utf-8

    编码 ansi_ansi编码和utf-81、ANSI编码不是一个具体的字符集,而是对一些多字节字符集类型的字符集的一个总体的称呼,总称。(Windows)ANSI编码中的每一个代码页值就是对一个具体的多字节字符集类型的字符集的别名。例如,代码页936就是Windows系统对简体中文GBK这个字符集的别名。如果ANSI编码是一个具体的字符集,由于汉字和韩文字符都是它能表示的字符,那么里面写有韩文字符的以(Windo

    2025年11月12日
    4
  • pycharm修改环境_pycharm更改环境

    pycharm修改环境_pycharm更改环境因为有时需要在Terminal中调试代码,而且调试前需要配置环境变量,虽然操作不麻烦,但用起来总不习惯.特别是项目比较多时,需要频繁进到设置里面去改.以前设置环境变量的操作如下图:Settings-Tools-Terminal-ProjectSettings-Enviromentvariables添加环境变量比如我们有一个文件env.list里面的内容如下:IN_HOST=’192.168.0.6’#数据库主机IPIN_PORT=8888#数据库端口IN_US

    2022年8月27日
    4
  • 手机端有没有好用的图片识别文字工具值得推荐?

    手机端有没有好用的图片识别文字工具值得推荐?图片转文字,用到的就是OCR识别技术,针对网络上复杂字体实现精确识别功能,经常用于社交、电商、学习等场景。传统的将图片识别文字的方式选择手动书写,随着AI智能技术的应用,以OCR智能识别工具由于使用简单、转写效率高逐渐代替传统的手动书写。下面给大家分享三款超好用的图片转文字工具,看看你喜欢的有没有上榜。1、微信提取文字微信基本上是现在手机中必装软件,很多人仅用微信用来日常聊天,实际上很多小功能也是非常好用。今天给大家介绍微信提取文字的方法。第一步:打开好友对话框,找到需要识别的图片。第二步:点击右下

    2022年5月3日
    41
  • Landsat系列卫星数据应用介绍

    Landsat系列卫星数据应用介绍目录1.LandSat介绍1.1Landsat-5介绍1.2Landsat-7介绍1.3Landsat-8介绍1.4LandSat影像下载网址:2传感器简介2.1Landsat5TM2.2Landsat7ETM2.2.1产品描述2.2.2Landsat7波段参数2.3Landsat8卫星2.3.1Landsat8产品…

    2022年7月23日
    10
  • c语言 数组存放规则,C语言数组详解

    c语言 数组存放规则,C语言数组详解数组在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。本章介绍数值数组和字符数组,其余的在以后各章陆续介绍。数组类型说明在C语言中使…

    2022年7月27日
    3
  • centos 安装和配置mariadb详细教程[通俗易懂]

    centos 安装和配置mariadb详细教程[通俗易懂]1.安装mariadatabaseCentos8上,默认安装的mariadb服务器版本为:MariaDBCommunityServer10.3dnfinstallmariadb-server命令进行安装就可以了。dnfinstallmariadb-server2.启动mariadatabasesystemctlstartmariadb3.查看mariadatabase运行状态通过命令查看运行数据库的版本:systemctlstat..

    2022年5月30日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号