Life is short, so we need program

每日一题, 积累从点滴开始

  :: 首页 :: 博问 :: 闪存 :: :: 联系 :: :: 管理 ::

超级最小公倍数

时间限制:8000 ms  |  内存限制:16384 KB
        描述

给2个正整数a,b(1<=a,b<=10100),求a和b的最小公倍数。

输入

输入包含多组数据,每组数据一行,包含两个正整数a和b,中间以一个空格隔开。输入以0 0结束。

输出

每组数据输出一行,为a,b的最小公倍数。

样例输入
123 321
123456789 987654321
0 0

样例输出
13161
13548070123626141

 1 import java.math.*;
 2 import java.io.*;
 3 import java.util.*; 
 4 
 5 public class Main {
 6     public static void main(String[] args) {
 7         BigInteger a, b;
 8         BigInteger c;
 9         Scanner cin = new Scanner(System.in);
10         
11         while(cin.hasNext()) {
12             String s = cin.nextLine();
13             String[] sa = s.split("\\ ");
14             a = new BigInteger(sa[0], 10);
15             b = new BigInteger(sa[1], 10);
16             if((a.compareTo(BigInteger.ZERO) == 0) &&(b.compareTo(BigInteger.ZERO) == 0)) break;
17             c = a.multiply(b);
18             c = c.divide(a.gcd(b));
19             System.out.println(c);
20         }
21             
22     }
23 }

 

 

posted on 2012-06-14 23:33  CDU_ICPC  阅读(307)  评论(0编辑  收藏  举报