HDU 1019 Least Common Multiple

Posted 闪耀子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 1019 Least Common Multiple相关的知识,希望对你有一定的参考价值。

多个数的最小公倍数

数的类型不能为int ,而是选择long long 类型

若是使用scanf, printf函数时 用%I64d,而不是%lld ,即使两种实质意义没什么不同,仅仅是平台不一样

最小公倍数可以用辗转相除法,这里没有用,简单

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 int Common(int a, int b) {
 6     int t = (a < b )? a : b;
 7     while(t > 0) {
 8         if(a % t == 0 && b % t == 0)
 9             break;
10         t --;
11     }
12     return t;
13 }
14 
15 int main()
16 {
17 
18     freopen("C:\\Users\\super\\Documents\\CB_codes\\in.txt", "r", stdin);
19     //freopen("C:\\Users\\super\\Documents\\CB_codes\\out.txt","w",stdout);
20     int T, n;
21     long long int a, b;
22     scanf("%d", &T);
23     while(T --) {
24         scanf("%d", &n);
25         b = 1;
26         for(int i = 0; i < n; i ++) {
27             scanf("%I64d", &a);
28             b = b * a / Common(a, b);
29         }
30 
31         printf("%I64d\n", b);
32     }
33 
34 
35     fclose(stdin);
36     return 0;
37 }

 

以上是关于HDU 1019 Least Common Multiple的主要内容,如果未能解决你的问题,请参考以下文章

HDU 1019 Least Common Multiple

Hdu 1019 Least Common Multiple

hdu 1019 Least Common Multiple

HDU 1019 Least Common Multiple

HDU - 1019 - Least Common Multiple - 质因数分解

HDU1019 Least Common Multiple(多个数的最小公倍数)