蓝桥杯 算法提高 8-1因式分解
2017-02-20 15:16
281 查看
问题描述
设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2*3。输入20,输出2*2*5。
样例
与上面的样例输入对应的输出。
例:
120
2*2*2*3*5
数据规模和约定
输入数据中每一个数在int表示范围内。
设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2*3。输入20,输出2*2*5。
样例
与上面的样例输入对应的输出。
例:
120
2*2*2*3*5
数据规模和约定
输入数据中每一个数在int表示范围内。
import java.util.Scanner; public class Main{ public static void main(String args[]){ Scanner in=new Scanner(System.in); int n=in.nextInt(); if(zhishu(n)){ System.out.println(n); }else{ boolean flag=true; while(n%2==0){ //n能被2整除的情况 if(flag){ System.out.print(2); flag=false; } else{ System.out.print("*2"); } n/=2; } while(n!=1){//n不能被2整除的情况 for(int i=3;;i+=2){ if(zhishu(i) && n%i==0){ if(flag){ System.out.print(i); flag=false; }else{ System.out.print("*"+i); } n/=i; break; } } } } } public static boolean zhishu(int a){ for(int i=2;i<a;i++){ if(a%i==0){ return false; } } return true; } }
相关文章推荐
- 蓝桥杯 算法提高 8-1因式分解
- [蓝桥杯]算法提高 8-1因式分解
- 蓝桥杯 算法提高 8-1因式分解
- 蓝桥杯 ADV-223 算法提高 8-1因式分解
- 蓝桥杯 算法提高 8-1因式分解(Java解题)
- 蓝桥杯 算法提高 8-1因式分解
- 蓝桥杯 算法提高 8-1因式分解
- 蓝桥杯 算法提高 扶老奶奶过街
- 蓝桥杯 算法提高 队列操作
- 蓝桥杯 ADV-194 算法提高 盾神与积木游戏 java版
- 蓝桥杯 ADV-112 算法提高 c++_ch02_01
- 蓝桥杯 ADV-205算法提高 拿糖果(动态规划)
- 蓝桥杯 算法提高 三个整数的排序
- 蓝桥杯 ADV-202算法提高 最长公共子序列(动态规划)
- 蓝桥杯 算法提高VIP 素数求和(java)
- 蓝桥杯 ADV-212 算法提高 3-1课后习题2
- 蓝桥杯 算法提高 12-1三角形 【计算几何_三角形】【全是板子】
- 蓝桥杯 算法提高 排列数
- 蓝桥杯 ADV-77 算法提高 统计平均成绩
- 蓝桥杯 算法提高 递推求值