分解因数和求因子个数
1.分解因数
链接:分解因数__牛客网
来源:牛客网
所谓因子分解,就是把给定的正整数a,分解成若干个素数的乘积,即 a = a1 × a2 × a3 × ... × an,并且 1 < a1 ≤ a2 ≤ a3 ≤ ... ≤ an。其中a1、a2、...、an均为素数。 先给出一个整数a,请输出分解后的因子。
输入描述:
输入包含多组数据,每组数据包含一个正整数a(2≤a≤1000000)。
输出描述:
对应每组数据,以“a = a1 * a2 * a3...”的形式输出因式分解后的结果。
示例1
输入
10<br/>18
输出
10 = 2 * 5<br/>18 = 2 * 3 * 3
import java.util.*;
public class Main{//这里是分解因数的方法private static List<String> func (int a){List<String> list2 = new ArrayList<>();for(int i=2;a > 1 && i <= Math.sqrt(a);i++){while(a % i == 0){list2.add(String.valueOf(i));a /= i;}}//如果a是因为就是一个素数而出来,就要被单独放进去if(a > 1){list2.add(String.valueOf(a));}return list2;}public static void main(String[] args){Scanner sca = new Scanner(System.in);while(sca.hasNext()){int a = sca.nextInt();这里用List<String>是方便下面使用String的join()方法List<String> factors = func(a);//这里的join方法是将前面的因数用*分隔开,并加空格//这里的"%d = %s"是个占位符,表示后面是整型数 = 字符串输出System.out.printf("%d = %s\n",a,String.join(" * ",factors));}}
}
2.因子个数
链接:因子个数__牛客网
来源:牛客网
一个正整数可以分解成一个或多个数组的积。例如36=2*2*3*3,即包含2和3两个因子。NowCoder最近在研究因子个数的分布规律,现在给出一系列正整数,他希望你开发一个程序输出每个正整数的因子个数。
输入描述:
输入包括多组数据。 每组数据仅有一个整数n (2≤n≤100000)。
输出描述:
对应每个整数,输出其因子个数,每个结果占一行。
示例1
输入
30<br/>26<br/>20
输出
3<br/>2<br/>2
import java.util.*;
public class Main{public static void main(String[] args){Scanner sca = new Scanner(System.in);while(sca.hasNext()){int n = sca.nextInt();int count = 0;for(int i = 2;i < Math.sqrt(n);i++){//表示n是个合数if(n % i == 0){//n不断整除,能整除一次,说明是因数,则++while(n % i == 0){n /= i;}count++;}}//如果n!=1.则表示n是素数if(n !=1 ){count++;}System.out.println(count);}}
}
分解因数和求因子个数相关推荐
- 等式(分解质因子求因子个数)
链接: https://www.nowcoder.com/acm/contest/90/F 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6553 ...
- 7809 - 试题J:因数个数 25'(欧拉筛法求因子个数)
链接:http://oj.hzjingma.com/p/7809?view=classic 来源:竞码编程 题目描述 求所有 2 2 2 到 n n n 的整数中,因数个数第 k k k 少的数因 ...
- c语言dcount求因子个数,趣味编程之计算相亲数(上)
一直想写这篇关于算法的文章,但是由于看到园子里众多研究算法的高手让我一直没有决心写下来,但高手归高手,不是高手也可以写出来让高手们拍砖,所以今天就在这里献丑了.相亲数和完全数作为数学问题的确是顶级难题 ...
- c语言dcount求因子个数,51jianyijisuanqi的.doc
51jianyijisuanqi的 51单片机实现的简易计算器1. 4X4键盘输入,点阵字符型液晶显示.2. 由于所采用的浮点程序库的限制(MCU平台只找到这个--),浮点运算采用3字节二进制补码表示 ...
- 数论之因子和与因子个数
因子和与因子个数 一 因子和定义 实战题目(模板题) 因子和模板 二 因子个数定义 实战题目 因子个数代码 三 每日共勉 一 因子和定义 实战题目(模板题) 题目链接: link. 题解博客链接: l ...
- 求一个数的所有因数+质因数分解【数论】
先附上所有因数的求法: 我的做法:是今天误打误撞写出来的: http://exam.upc.edu.cn/problem.php?id=5062 然后,我上网找居然没有人写一个高效一点的,我这个做法其 ...
- C++判断是否为素数、求一个数的因数、质因数分解
判断一个数是否为素数 #include<iostream> #include<vector> #include<math.h> #include<algori ...
- c语言因子优化算法,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include main() { int n,q,p,m,k=1,sum=0,s[99999]={2},t[99999];//n是输入 ...
- 质因数 求约数 c语言,【初等数论】 求一个数有多少约数及所有约数之和、分解质因数...
今天做题遇见,于是就搜了一下,于是就有了这篇文章.(其实我不知道原理....Orz)我觉得分解质因数的最优算法应该不是我这篇文章中的这个.....谁有好的算法可以给我说一下,谢谢. 1.有多少个约数: ...
最新文章
- 51CTO学院薛大龙软考班,再努力一点点就能成功了
- visualSVN-server的安装图解
- UA MATH564 概率论VI 数理统计基础3 卡方分布中
- JZOJ 1016. 【PKU3321】苹果树
- SharePoint Explorer View
- 构建地理上分散的网络之4点论证
- C语言中的格式化打印printf/sprintf以及嵌入式printf重定向进行DEBUG
- python运维开发之第八天(socket)
- 多路开关模式的switch语句
- [GCJ] Qualification Round 2017
- NKOJ2317 英语四六级考试
- jQuery LigerUI API预览版发布
- CloudStack 4.4+KVM之通过ISO文件创建CentOS虚拟机
- ALSA声卡10_从零编写之数据传输_学习笔记
- 油猴GM_download使用及下载扩展名flac,油猴脚本修改下载扩展名
- c++模板参数自动推导
- vnc报错 PID file /home/root/.vnc/localhost.pid not readable after start.
- MyBatis-Plus插件
- excel股票今日走势计算机,怎样用excel 实时读取 股票日线数据
- Linux 系统维护命令小结