最多约数问题
来源:互联网 发布:java nanotime 不准 编辑:程序博客网 时间:2024/05/17 02:29
#include "stdio.h"#include "string.h"const int MAXP = 316;const int PCOUNT = 34;int prim[PCOUNT]; //存储素数bool get[PCOUNT];//素数筛法void prims(){ memset(prim, 0, sizeof(prim)); int i; for(i=0; i<=MAXP; i++) get[i] = true; int j; for(i=2; i<=MAXP; i++) if(get[i]) { j = i + i; while(j<=MAXP) { get[j] = false; //如果是i的倍数,就一定不是素数 j += i; } } int count = 0; for(i=2; i<=MAXP; i++) if(get[i]) prim[count++] = i;}//返回x中的约数个数//x = p1^N1 * p2^N2 + ... + pK^NK//div(x) = (N1+1)*(N2+1)*...*(NK+1)int div(int x){ int count; int sum = 1; int i; for(i=0; i<=MAXP && prim[i]<=x; i++) { count = 1; if(x%prim[i]==0) { while(x%prim[i]==0) { count++; x /= prim[i]; } sum *= count; } } return sum;}int main(){ prims(); int i; int low, high; printf("请输入两个正整数:\n"); scanf("%d", &low); scanf("%d", &high); int max = 0; int count = 0; for(i=low; i<=high; i++) { count = div(i); if(count>max) max = count; } printf("两个正整数之间约数个数最多的数中有%d个约数\n", max); return 0;}
0 0
- 最多约数问题
- 最多约数问题
- 最多约数问题
- 最多约数问题
- 【最多约数问题】
- 问题八十六:最多约数
- 最多约数问题
- 最多约数问题
- 【最多约数问题】
- 最多约数问题
- 最多约数问题
- NOJ1203 最多约数问题
- 最多约数问题
- 最多约数问题
- 最多约数问题
- 最多约数问题
- 最多约数问题
- 最多约数问题
- windows Android开发环境快速搭建和部署
- 前端开发问题 大杂烩
- sicily 1325. Digit Generator
- esri/dijit/andlysis/ExtractData:给定的extent提取数据
- [17]AWK记录、字段、模式、跨平台移植及正则表达式
- 最多约数问题
- hibernate关联映射笔记
- 重写与重载简单例子区分
- iOS 获取本地视频播放路径
- php循环创建文件
- 正则表达式之旅_sed_awk
- Android项目工程目录详解
- java list
- 旭说数据结构之线性表