基础练习16-分解质因数
分解质因数
资源限制
时间限制:1.0s
内存限制:512.0MB
问题描述
求出区间[a,b]中所有整数的质因数分解。
输入格式
输入两个整数a,b。
输出格式
每行输出一个数的分解,形如k=a1a2a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例)
样例输入
3 10
样例输出
3=3
4=22
5=5
6=23
7=7
8=222
9=33
10=25
提示
先筛出所有素数,然后再分解。
数据规模和约定
2<=a<=b<=10000
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int m = sc.nextInt();//遍历m-n之间的数,调用函数分解质因数//当前遍历的数是i,对i进行质因数分解for (int i = n; i <= m; i++) {//把要分解的数作为参数传进去fen_jie_zhi_yin_shu(i);}}public static void fen_jie_zhi_yin_shu(int x) {//第一个素数2,先看能不能对2取整,再看取整后的倍数能不能对其取整,直到x不再是2的倍数,//依次,对3取整,当对4取整的时候,因为之前已经对2取整过,4是2的倍数//所以当前要分解的数一定不是4的倍数,6,9也是如此,这样保证了分解出来的数一定是质数int sushu = 2;int n = x;int first = 1;//first作为第一次分解的标志//如果要分解的数大于等于素数while (sushu <= n) {//判断x是否是素数的整数倍====>不是===>素数+1===>继续判断if (!(x % sushu == 0)) {// System.out.println("x不是sushu的整数倍---------------");sushu++;
// System.out.println("sushi自加,sushu是:"+sushu);
// System.out.println("--------------------------------");}else{// System.out.println("x是sushu的整数倍=================");//x是素数的整数倍===>将倍数赋值给x,对倍数继续分解x /= sushu;
// System.out.println("x是倍数,倍数x为"+x);if (first == 1) {System.out.print(n + "=" + sushu);first++;} else {System.out.print("*" + sushu);}
// System.out.println("==================================");}}System.out.println();}
}
主要考察质因数分解。
从2(素数)开始,观察要分解的数是否能将其整除,若可以就看其倍数是否能将2整除,直至不能将2整除,就对2加一,观察当前倍数是否能将3整除,依次判断。
这样,在判断完成是否能将2整除后,当前要分解的数将不能将2以及2的倍数整除,3和6,9,12,5和10,15,20等也是同样道理,这样就保证了最后分解结果里的一定都是素数。
基础练习16-分解质因数相关推荐
- [蓝桥杯][基础练习VIP]分解质因数
题目描述 求出区间[a,b]中所有整数的质因数分解. 提示 先筛出所有素数,然后再分解. 数据规模和约定 2< =a< =b< =10000 输入 输入两个整数a,b. 输出 每行输 ...
- Java基础编程之分解质因数
问题分析: 1. 所谓分解质因数就是每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数.如30=2×3×5 .分解质因数只针对合 ...
- [蓝桥杯][基础练习VIP]分解质因数-质数筛选+模拟+双指针
题目描述 求出区间[a,b]中所有整数的质因数分解. 提示 先筛出所有素数,然后再分解. 数据规模和约定 输入 输入两个整数a,b. 2< =a< =b< =10000 输出 每行输 ...
- java:蓝桥杯练习 分解质因数
[蓝桥杯][基础练习VIP]分解质因数 时间限制: 1Sec 内存限制: 128MB 提交: 2802 解决: 1688 题目描述 求出区间[a,b]中所有整数的质因数分解. 提示 先筛出所有素数,然 ...
- 蓝桥杯 基础练习 分解质因数 python语言
蓝桥杯 基础练习 分解质因数 python语言 描述 求出区间[a,b]中所有整数的质因数分解. 输入 输入描述: 输入两个整数a,b. 输入样例: 3 10 输出 输出描述: 每行输出一个数的分解, ...
- 蓝桥杯 基础练习 分解质因数 C语言
蓝桥杯 基础练习 分解质因数 C语言 描述 求出区间[a,b]中所有整数的质因数分解. 输入 输入描述: 输入两个整数a,b. 输入样例: 3 10 输出 输出描述: 每行输出一个数的分解,形如k=a ...
- java isprime函数_翁恺老师零基础java课程函数章第一题分解质因数
分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. 现在 ...
- Java实现 蓝桥杯VIP 基础练习 分解质因数
题目介绍 问题描述 求出区间[a,b]中所有整数的质因数分解. 输入格式 输入两个整数a,b. 输出格式 每行输出一个数的分解,形如k=a1a2a3-(a1<=a2<=a3-,k也是从小到 ...
- python【蓝桥杯vip练习题库】BASIC-16分解质因数(数论 质数分解)
试题 基础练习 分解质因数 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 求出区间[a,b]中所有整数的质因数分解. 输入格式 输入两个整数a,b. 输出格式 每行输出一个数的分解 ...
- 求助matlab分解质因数,Matlab
Since Apr.6th,2016 linspace:产生一系列整数.linspace(a, b, c)产生的数 x 范围为 a≤x≤b ,总数为 c . 注意和 a:b:c的区别,a:b:c中 c ...
最新文章
- oracle两张表 比较好,比较Oracle两张表的数据是否一样
- 简单实现ReplaceAll(转)
- 如何解决普通用户使用sudo找不到命令
- oracle 分区表
- UITableVIew的性能优化-重用原理
- Unable to resolve target 'android-5'
- html拼接日期,html日期加减
- mysql备份脚本 shell_MySQL数据库备份Shell脚本
- MySQL 5.7.25 在Windows 7中安装的记录
- ASP和IIS各一点
- android enable ipv6,安卓开启ipv6网络支持小米手机(miui)IPv6无法使用的问题
- 惠普103a微信打印服务器,惠普发布微信打印小程序,丰富云打印解决方案
- FortiGate 流量整形限速
- 假设 A 类有如下定义,设 a 是 A 类的一个实例,下列语句调用哪个是错误的?()
- React Profiler Chrome Tool
- 2022QS世界大学排名:全球全日制MBA、商科硕士榜单公布
- 基于Simulink的雷达系统射频前端建模仿真(附源码)
- Struts2 学习记录(2)
- android 防止反编译的若干方法
- mobilenet网络的理解
热门文章
- arduino loar_采用ESP8266和Arduino设计基于IoT的患者健康监测系统
- 码易众包平台致开源中国恶意剽窃的公开信
- XAG聚合细节举例说明
- python请输入星期几的第一个字母来判断_【Python 实例】面向对象 | 请输入一周中某天的名称的第一个字母来判断以下是星期几,如果第一个字母一样则继续判断第二个字母...
- 程序员不学会做饭,无异于慢性自杀!
- 风雨二十载:OpenGL 4.3规范发布
- 无限法则服务器角色操作忙,无限法则海岛地图决赛圈打药及火山灰伤害测试图文介绍[多图]...
- python import变灰_python--pycharm中import导入包呈现灰色问题之解决~很实用
- 安卓打包出现“app:processReleaseManifest“问题的一种解决方案
- 中兴通讯2015笔试应用题