质数因子,不去重

质数相关算法:求整数n的所有质因子 题目描述 功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 ) 最后一个数后面也要有空格 数据范围: 1≤n≤2×10**9+14 输入描述: 输入一个long型整数 输出描述: 按照从小到大顺序输出它的所有质数因子,以空格隔开。最后一个数后面也要有空格。 示例1 输入180 输出:2 2 3 3 5 整数质因子的核心判断: 1、能被该整数整除; 2、是质数(素数) 思路一: 1、先找出该整数下的所有质数,再逐一判断是否能被该整数整除, 阅读详情

描述
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )
数据范围: 1 < n < 2 * 10^9+ 14
输入描述:
输入一个整数
输出描述:
按照从小到大的顺序输出它的所有质数的因子,以空格隔开。

分析:这道题的本质是分解质因子。正常情况下,第一个思路是for循环,那么为了降低循环次数,一般用Math.sqrt方法,这里有一个需要主义的地方,如果输入的数n,就是一个质数,例如3,那么3的平方根转成int类型是1,这个for循环根本就不会执行,所以在for循环结束之后要判断n是否等于1。

Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
StringBuilder sb = new StringBuilder();
int len = (int) Math.sqrt(n);
for(int i = 2 ; i <= len; i++){
	while(n%i==0){
		sb.append(i);
        sb.append(' ');
        n=n/i;
     }
     if(n==1){
        break;
     }
}
if(n!=1){
    sb.append(n);
    sb.append(' ');//如果不想添加这个空格的话,最后的输出调用trim方法。
}
System.out.println(sb.substring(0,sb.length()-1));
质数因子C/C++ 质数因子C/C++ 题目: 功能:输入一个正整数按照从小到大顺序输出它的所有质数因子(如180的质数因子为2 2 3 3 5 ) 最后一个数后面也要有空格 输入输入一个long型整数 输出按照从小到大顺序输出它的所有质数因子,以空格隔开。最后一个数后面也要有空格。 阅读详情

相关推荐

一个数的质数因子

题目描述功能:输入一个正整数按照从小到大顺序输出它的所有质数因子(如180的质数因子为2 2 3 3 5 )最后一个数后面也要有空格详细描述:函数接口说明:public String getResult(long ulDataInput)输入参数:long ulDataInput:输入正整数返回值:String输入描述:输入一个long型整数输出描述:按照从小到大顺序输出它的所有质数的因...

LYduring的博客 6464

【华为机试真题详解JAVA实现】—质数因子

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )按照从小到大顺序输出它的所有质数因子,以空格隔开。数据范围:1≤n≤2×109+14。

猿小白的博客 348

【华为OD机试C++】质数因子

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )数据范围: 1 \le n \le 2 \times 10^{9} + 14 \1≤n≤2×10。按照从小到大顺序输出它的所有质数因子,以空格隔开。

智慧空间实验室 325

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )

一、题目 描述 功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 ) 数据范围: 1≤n≤2×109+14 1 \le n \le 2 \times 10^{9} + 14 \ 1≤n≤2×109+14 输入描述: 输入一个整数 输出描述: 按照从小到大顺序输出它的所有质数因子,以空格隔开。最后一个数后面也要有空格。 示例1 输入180 输出: 2 2 3 3 5 二、代码 #include <stdio.h> int

lemmon_tree的博客 5322

nowcoder(7)--质数因子

题目描述 功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 ) 最后一个数后面也要有空格 详细描述: 函数接口说明: public String getResult(long ulDataInput) 输入参数: long ulDataInput:输入正整数 返回值: String 输入描述: 输入一个long型整数 输出描述: ...

qq_30182357的博客 557

HJ6 质数因子HJ7 取近似值HJ8 合并表记录HJ9 提取重复的整数

一个基于红黑树的容器,它可以保持键值对按键排序,并且每个键是唯一的。当我们尝试插入一个已经存在的键时,我们可以简单地将新的值加到已存在的值上。我们可以使用C++的标准库函数。我们会接收一个正浮点数,然后根据它的小数部分决定是向上取整还是向下取整。来自动对index进行排序,并且合并相同index的value值。函数向上取整,但这里我们要根据小数点后的值决定取整的方向。为了方便检查数字是否已经被加入到新整数中,我们可以使用一个。来存储已经处理过的数字,因为集合自动处理重复项。要实现这个功能,我们可以使用。

dc爱傲雪和技术 900

蓝桥杯算法训练 素因子

蓝桥杯算法训练 素因子 这个题难,是我对书理解透彻,把一个习题经验用错了地方,故记录成博客,告诫自己。 错误之处:int pri[12] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31}; 在《算法进阶指南》里,约数那一部分提过一个引理: 1~N中任何数的质因子会超过 10 个,且所有质因子的指数总和超过30。 证明: 最小的11质数的乘积2×3×5×7×11×119×23×29×31>2×1092\times3\times5\times7

kylinholmes的博客 251

整数因子分解算法:Python 3.12 实现与边界条件处理的5个要点

本文详细介绍了整数因子分解算法在Python 3.12中的实现与优化,点讲解了边界条件处理的5个关键要点。通过基础算法实现、性能优化、异常处理及实际应用中的常见问题解决方案,帮助开发者构建健壮高效的因子分解函数。特别针对大整数处理和算法选择提供了实用建议。

weixin_33851429的博客 319

【数论】 质数知识总结(质数判断、筛选、质因子分解、互质)

文章目录一.定义二.质数的判断二.质数的筛选 一.定义 质数,又称素数,若一个正整数无法被除了1和它自身以外的其它数整除,则称其为质数,否则为合数。特殊地,1是合数也质数 二.质数的判断 试除法: 检查所有可能成为n的因子的数,若没有找到因子,则证明这个数是一个质数 一种朴素的做法就是从2遍历到N-1观察有无N的因子,若没有则说明N为质数,依据的想法是N的因子必然在1~N的范围内 改进: 其实我们只要找到一个N的因子(除了1和它本身)就可以证明N是个合数。 定理:如果N是一个合数,则必然存在一个N的

Qiuker_jl的博客 4866

质数因子 java_质数因子

都好多天没有写了,虽然感觉又好多的事情要做,却知道该从哪里开始做,想到了华为的机试题,然后,又过来做道。题目描述功能:输入一个正整数按照从小到大顺序输出它的所有质数因子(180的质数因子为2 2 3 3 5 )最后一个数后面也要有空格详细描述:函数接口说明:public String getResult(long ulDataInput)输入参数:long ulDataInput:输入...

weixin_35587674的博客 933

java 质数因子_质数因子

158推荐#include 查看全部编辑于 2019-02-12 20:22:30回复(82)86a, res = int(input()), []for i in range(2, a // 2 + 1):while a % i == 0:a = a / ires.append(i)print(" ".join(map(str, res)) + " " if res else str(a) +...

weixin_42116847的博客 1020

试题 算法训练 素因子

试题 算法训练 素因子 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述   给定一个正整数n,求一个正整数p,满足p仅包含n的所有素因子,且每个素因子的次数大于1 输入格式   一个整数,表示n 输出格式   输出一行,包含一个整数p。 样例输入 1000 样例输出 10 数据规模和约定   n<=10^12 样例解释:n=1000=2^353,p=2*5=10 ...

叶叶叶w的博客 587

华为机试题:HJ6 质数因子(python)

输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )+14:输入一个整数:按照从小到大顺序输出它的所有质数因子,以空格隔开。1802 2 3 3 5举例说明:(11没有质因子。(2)5只有1质因子,5本身。(5是质数)(3)6的质因子是2和3。(6 = 2×3)(4)2、4、8、16等只有1质因子:2(2是质数,4 = 2,8 = 2,如此类推)(5)100有2个质因子:2和5。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 1327

【题解 | 质数因子

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )数据范围输入一个整数。按照从小到大顺序输出它的所有质数因子,以空格隔开。

qq_45816513的博客 467

python华为机试题:质数因子

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )

qq_43797260的博客 632

功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )数据范围: 1≤�≤2×109+14 1≤n≤2×

【代码】功能:输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )数据范围: 1≤�≤2×109+14 1≤n≤2×。

tinglalala的博客 758

Java 质数因子

输入一个正整数按照从小到大顺序输出它的所有质因子重复的也要列举)(如180的质因子为2 2 3 3 5 )

qq_45200515的博客 1278
上一篇: 进制转换,16转10
下一篇: 取整近似值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值