HDOJ 1405 The Last Practice

简介: Problem Description Tomorrow is contest day, Are you all ready? We have been training for 45 days, and all guys must be tired.

Problem Description
Tomorrow is contest day, Are you all ready?
We have been training for 45 days, and all guys must be tired.But , you are so lucky comparing with many excellent boys who have no chance to attend the Province-Final.

Now, your task is relaxing yourself and making the last practice. I guess that at least there are 2 problems which are easier than this problem.
what does this problem describe?
Give you a positive integer, please split it to some prime numbers, and you can got it through sample input and sample output.

Input
Input file contains multiple test case, each case consists of a positive integer n(1< n<65536), one per line. a negative terminates the input, and it should not to be processed.

Output
For each test case you should output its factor as sample output (prime factor must come forth ascending ), there is a blank line between outputs.

Sample Input
60
12
-1

Sample Output
Case 1.
2 2 3 1 5 1

Case 2.
2 2 3 1

Hint
60=2^2*3^1*5^1

它说的是一些素数!不是全部是素数!既然是从小到大,所以从2开始遍历到根号(n)就可以了。如果最后n还是大于1的,说明n没除完,还剩余一个n^1.

格式!!!
每行的最后一定有一个空格。
各行之间有一个空行!
Case n.!!!数字后面有一个‘.’点。。。

import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int tm = 0;
        while(sc.hasNext()){
            int n = sc.nextInt();
            if(n<0){
                return ;
            }
            if(tm>0){
                System.out.println();
            }

            System.out.println("Case "+(++tm)+".");
            for(int i=2;i<=Math.sqrt(n);i++){
                int num = 0;
                while(n%i==0){
                    n=n/i;
                    num++;
                }
                if(num!=0){
                    System.out.print(i+" "+num+" ");
                }
            }
            if(n>1){
                System.out.print(n+" 1 ");
            }
            System.out.println();

        }
    }

}
目录
相关文章
|
12月前
hdoj 4572 Bottles Arrangement
虽然不知道怎么做,但是AC还是没有问题的。 大概就是循环n次,从m加到m-n/2 除了最后一个数,每个都加两次。
35 0
HDOJ 2046 骨牌铺方格
HDOJ 2046 骨牌铺方格
144 0
HDOJ 2046 骨牌铺方格
HDOJ 2056 Rectangles
HDOJ 2056 Rectangles
128 0
|
Java 数据安全/隐私保护
HDOJ 2100 Lovekey
HDOJ 2100 Lovekey
95 0
HDOJ 2013 蟠桃记
HDOJ 2013 蟠桃记
93 0
HDOJ 2019 数列有序!
HDOJ 2019 数列有序!
119 0
HDOJ 1214 圆桌会议
Problem Description HDU ACM集训队的队员在暑假集训时经常要讨论自己在做题中遇到的问题.每当面临自己解决不了的问题时,他们就会围坐在一张圆形的桌子旁进行交流,经过大家的讨论后一般没有解决不了的问题,这也只有HDU ACM集训队特有的圆桌会议,有一天你也...
838 0
|
Java
HDOJ 1715 大菲波数
Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3。 计算第n项Fibonacci数值。 Input 输入第一行为一个整数N,接下来N行为整数Pi(1
861 0