质数乘积

题目描述
TWQ每天疯狂的刷题,今天又刷到一道水题,于是赶紧来拿一血吧,给你一个正整数n,求小于n的数中所有质数的乘积,输入有多组测试用例,0为结束标志,所有质数的乘积初始值为0。

输入
正整数n(n<=10000)

输出
小于n的质数的乘积。

样例输入
5
0

样例输出
6

提示
大数乘法

#include<stdio.h>
#include<math.h>
int a[1000000];
int main()
{int i,j,f=0,k,l1,l2,x,y,z,n,l,b[10010];//标记10000以内的素数for(i=0;i<=10000;i++)b[i]=1;//先把所有数标位1for(i=2;i<=100;i++)//前100的质数就能筛出来所有质数了{if(b[i])//如果b[i]==1则就是素数{for(j=i+i;j<=10000;j=j+i)//埃氏筛法,所有是i的倍数全部不是素数,标记为0b[j]=0;//标记所有不是质数的数}}while(scanf("%d",&n)!=EOF){if(n<=0)break;for(i=1;i<1000000;i++)a[i]=0;//把数组初始化为0方便后面计算因为0*任何数都是0a[0]=1;//大数乘法首位为1去乘每一位if(n==1||n==2)//特判printf("0\n");else{for(i=2;i<n;i++)//遍历n以内的素数{if(b[i])//i是素数{y=0;for(j=0;j<7000;j++)//遍历7000简单粗暴{x=a[j]*i+y;//每一位*ia[j]=x%10;//保留个位存入数组ay=x/10;//计算进位}}}for(i=5000;i>=0;i--)//首先遍历找出第一个不为0的数即是最高位if(a[i]!=0)break;for(j=i;j>=0;j--)//循环遍历printf("%d",a[j]);printf("\n");}}return 0;
}

质数乘积(大数乘法+埃氏筛法)相关推荐

  1. 埃氏筛法求质数(例如:200以内的质数)

    传统求质数 全部遍历,是否有因数可以整除 private boolean isPrime(int n){if(n < 2){return false;}if(n == 2 || n == 3 | ...

  2. 埃拉托色尼筛选法巧解质数问题(埃氏筛法求解素数问题)

    背景: 素数(即质数)问题是老问题了,程序员面试问题,大小比赛的热门题. 比如 最简单的判断素数问题,或者计算素数的个数,等等. 简单的判断素数函数: 素数的定义:指在大于1的整数中,只能被1和它本身 ...

  3. 筛质数—(朴素筛法、埃氏筛法、欧拉筛法(线性筛法))

    筛质数时首先要了解质数的定理:1~n中有  个质数 下面再来看具体算法: 1.朴素筛法: 直接把2~n-1中质数和合数的倍数都筛一遍,其代码如下所示: int primes[N],cnt=0; boo ...

  4. 找素数(质数):线性筛法和埃氏筛法

    先看这道题 洛谷P1217回文质数 对于这道题,普通的暴力模拟会TLE,所以得寻求改进.这里我学会了两种方法: 第一种:线性筛法 这种算法的核心思想就是:任何一个合数都可以由质数相乘得到 下面就是核心 ...

  5. 【算法学习】找素数的几种算法: 简单穷举, 埃氏筛法, 欧氏筛法, 从O(n2)到O(n)

    文章简介 本文记录寻找素数的几种算法, 本文中的O()没有指明默认表示时间复杂度 代码使用Java 目录 文章简介 正文 穷举计数法(判断O(n)) 优化: 布尔+break(判断 小于O(n)) 优 ...

  6. java 埃氏筛法_筛法

    素数与最大公因子2021-02-12 17:32:04 素数 定义: 素数是大于 \(1\) 的正整数, 并且除了 \(1\) 和它本身外不能被其他正整数整除. 素数的数量: 不超过 \(N\) 的素 ...

  7. 【中国大学MOOC】java程序设计-week3-用“埃氏筛法”求2~100以内的素数

    1.题目 用"埃氏筛法"求2-100以内的素数.2-100以内的数,先去掉2的倍数,再去掉3的倍数,再去掉5的倍数,--依此类推,最后剩下的就是素数. 要求使用数组及增强的for语 ...

  8. 线性筛法求素数c语言,[算法]素数筛法(埃氏筛法线性筛法)

    一.素数筛的定义 给定一个整数n,求出[1,n]之间的所有质数(素数),这样的问题为素数筛(素数的筛选问题). 二.埃氏筛法(Eratosthenes筛法) 埃氏筛法又叫做Eratosthenes筛法 ...

  9. P7960 [NOIP2021] 报数 埃氏筛法

    在世界杯小组赛的前2分钟AC了了这题,然后赶紧趁热写了篇题解 直接上题目 等会儿 这篇文章写了2678字 先赞后看好习惯 题目描述 报数游戏是一个广为流传的休闲小游戏.参加游戏的每个人要按一定顺序轮流 ...

最新文章

  1. 缺陷漏测分析:测试过程改进
  2. ubuntu10.10各种服务器搭建
  3. ping 命令使用代理_网络检测知识篇:ping命令使用知识,你知道几点?
  4. SQL Server 数据库多表查询
  5. mac共享文件夹 linux,一文搞定 Linux,Mac,Windows 的 NFS 网络文件共享服务部署
  6. kmo检验和bartlett球形检验_互助问答59期:多期DID平行趋势检验以及因子分析累计方差贡献率...
  7. GlusterFS 部署和应用
  8. Apache下域名虚拟主机在个人主页目录上实现过程
  9. SpringBoot整合Quartz
  10. web页面和ssh登陆到防火墙
  11. SpringDataJPA之Specification复杂查询
  12. 定时删除虚拟服务器快照,ESXi6.0 设置自动删除快照脚本及计划任务
  13. Godot 导出项目文件错误解决办法
  14. Notification通知全文 7.0 and 8.0通知 ,横幅 ,显示,抖动,响铃
  15. vue created钩子使用后台数据赋值给data里的变量,报错‘undefined’
  16. 刚刚下载的eclipse打不开?一点击就报错
  17. 佳能eosr控制环能否计算机控制,EOS R有哪些隐藏功能
  18. Ubuntu 20 core dumped(核心已转储)问题分析
  19. Java在c盘fld目录下的文件名_VB操作文件夹的几个方法
  20. 逆水寒捏脸服务器维护,《逆水寒》2019年3月28日更新公告

热门文章

  1. Day10-feign结合Hystrix使用-p163、p164
  2. 夯实基础——P1830 轰炸III
  3. 世界读书日:作为一个优秀的程序员请收藏这份书单
  4. 基于在线问诊记录的抑郁症病患群组划分与特征分析
  5. C64+ cache资料集(更新中)
  6. stranded 和 non-stranded RNA-seq
  7. webpack的基本使用03
  8. 这场蝴蝶效应,从“丝滑”的双11开始
  9. word插入图片不能打印出来,转成PDF后才能打印成功
  10. HDU 5514 Frogs