桐桐的数学难题

题目描述

  今天数学课上,桐桐学习了质数的知识:一个正整数如果只能被1和它本身整除,那么这个整数便是质数。桐桐就想:任意一个正整数是否都能分解成若干个质数相乘的形式呢?输入一个正整数n(2≤n≤109),把它分解成质因子相乘的形式,如果为质数则输出该数本身。如:36=2×2×3×3;19=19。你能帮助桐桐解决这个难题吗?

输入

输入一个正整数n(2≤n≤109)

输出

把它分解成质因子相乘的形式,如果为质数则输出该数本身,乘数从小到大输出。

样例输入

99

样例输出

99=3311

import java.util.ArrayList;
import java.util.Scanner; public class 桐桐得数学题 {
static int n;
// static ArrayList<Integer> list = new ArrayList<Integer>();
static boolean isPrime(int i) {
// if(list.contains(i)) return true;
// if(i<list.get(list.size()-1)) return false;
if (i < 2) return false;
if (i == 2) return true;
for (int j = 2; j <= (int) Math.sqrt(i); j++) {
if (i % j == 0) return false;
}
// list.add(i);
return true;
} public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// list.add(2);
n = sc.nextInt();
if(isPrime(n)){
System.out.println(n+"="+n);
return ;
}
StringBuilder sb = new StringBuilder(n + "=");
int a = 1;
int max=(int) Math.sqrt(n);
for (int i = 2; i <= max; i++) {
if (n % i == 0 ) {
// int b = n;
while (n % i == 0) {
a *= i;
sb = sb.append(i).append("*");
// System.out.println(sb);
n /= i;
}
max=(int) Math.sqrt(n);
// if (a == n) {
// System.out.println(sb.delete(sb.length() - 1, sb.length()));
// return;
// }
}
}
if(n==1){
sb.delete(sb.length() - 1, sb.length());
}
else
sb.append(n);
System.out.println(sb);
} }

Java实现桐桐的数学难题的更多相关文章

  1. 桐桐的数学游戏(N皇后)

    题目描述 相信大家都听过经典的“八皇后”问题吧?这个游戏要求在一个8×8的棋盘上放置8个皇后,使8个皇后互相不攻击(攻击的含义是有两个皇后在同一行或同一列或同一对角线上). 桐桐对这个游戏很感兴趣,也 ...

  2. 桐桐的贸易--WA

    问题 A: 桐桐的贸易 时间限制: 1 Sec  内存限制: 64 MB提交: 15  解决: 2[提交][状态][讨论版] 题目描述 桐桐家在Allianceance城,好友ROBIN家在Horde ...

  3. Vijos P1325桐桐的糖果计划

    > P1325桐桐的糖果计划 标签:**图结构 强连通分量** 描述 桐桐很喜欢吃棒棒糖.他家处在一大堆糖果店的附近. 但是,他们家的区域经常出现塞车.塞人等情况,这导致他不得不等到塞的车或人走 ...

  4. vijos1325 桐桐的糖果计划

    Description 桐桐是一个快乐的小朋友,他生活中有许多许多好玩的事,让我们一起来看看吧-- 桐桐很喜欢吃棒棒糖.他家处在一大堆糖果店的附近. 但是,他们家的区域经常出现塞车.塞人等情况,这导致 ...

  5. 桐桐的糖果计划(vijos 1325)

    背景 桐桐是一个快乐的小朋友,他生活中有许多许多好玩的事,让我们一起来看看吧…… 描述 桐桐很喜欢吃棒棒糖.他家处在一大堆糖果店的附近. 但是,他们家的区域经常出现塞车.塞人等情况,这导致他不得不等到 ...

  6. 【2018寒假集训 Day1】【位运算】桐桐的运输方案

    桐桐的运输方案(transp) [问题描述] 桐桐有 N 件货物需要运送到目的地,它们的重量和价值分别记为: 重量:W1,W2,…,Wn: 价值:V1,V2,…,Vn: 已知某辆货车的最大载货量为 X ...

  7. VIJOS-P1325 桐桐的糖果计划

    VIJOS-P1325 桐桐的糖果计划 JDOJ 1432 桐桐的糖果计划 https://neooj.com/oldoj/problem.php?id=1432 Description 桐桐很喜欢吃 ...

  8. java实现一个简单的数学表达式分析器(加减乘除和括号)

    1.使用此分析器需要输入两个量: String str1=运算符号有前后有空格的数学表达式(如 1 + 2 *  ( 3+1)  - 5 #),并在最后添加‘#’字符作为结束标志: String st ...

  9. Java自学-数字与字符串 数学方法

    Java Math类常用方法 java.lang.Math提供了一些常用的数学运算方法,并且都是以静态方法的形式存在 步骤 1 : 四舍五入, 随机数,开方,次方,π,自然常数 package dig ...

随机推荐

  1. 解决编码问题:AttributeError: 'str' object has no attribute 'decode'

    1. 问题发现: 出现:读取文件,对其进行解码,出现错误,AttributeError: 'str' object has no attribute 'decode' 解释:属性错误,str对象不包含 ...

  2. 设计模式之GOF23桥接模式

    桥接模式 当一个问题违反单一职责原则时,及控制该产品的有多个维度,为了扩展时减少类的膨胀个数,可以选用桥接模式 避免多重继承时 例如买电脑时                  桥接模式

  3. python 基础应用2

    1.格式化输出% name = input('请输入姓名:') age = input('请输入年龄:') job = input('请输入工作:') mas = '''---------- info ...

  4. 可能会导致.NET内存泄露的8种行为

    原文连接:https://michaelscodingspot.com/ways-to-cause-memory-leaks-in-dotnet/作者 Michael Shpilt.授权翻译,转载请保 ...

  5. 《C程序设计语言》 练习2-8

    问题描述 练习 2-8 编写一个函数rightrot(x, n),该函数返回将x循环右移(即从最右端移出的位将从最左端移入)n(二进制)位后所得到的值. Write a function rightr ...

  6. Linux -- 在文件中添加信息的方法(转)

    转自:https://www.cnblogs.com/ZGreMount/p/7645542.html 创建test 文件: touch test.txt 方法一:echo 命令法: echo &qu ...

  7. 神奇的'license': 'AGPL 3.0'标签报错

    在__minifest__.py中,放了license标签,然后整个模块就报错了. 注释掉这个标签就好了.

  8. 7、会话框添加查看get与post请求类型

    前言 在使用fiddler抓包的时候,查看请求类型get和post每次只有点开该请求,在Inspectors才能查看get和post请求,不太方便.于是可以在会话框直接添加请求方式. 一.添加会话框菜 ...

  9. 使用better-scroll在vue中封装自己的Scroll组件

    1. better-scroll 原理 用一张图感受: 绿色部分为 wrapper,也就是父容器,它会有固定的高度.黄色部分为 content,它是父容器的第一个子元素,它的高度会随着内容的大小而撑高 ...

  10. 网鼎杯2020青龙组writeup-web

    本文首发于Leon的Blog,如需转载请注明原创地址并联系作者 AreUSerialz 开题即送源码: <?php include("flag.php"); highligh ...