HDU 1019 Least Common Multiple
HDU 1019 Least Common Multiple
题目大意:
给你T组数据,开头给你一个n,求后面n个数字的最小公倍数
解题思路:
这道是一道简单的lcm板子题,直接暴力就水过了
代码如下:
1 #include <bits/stdc++.h> 2 #define mem(a) memset(a,0,sizeof(a)) 3 #define mem1(a) memset(a,-1,sizeof(a)) 4 #define forn(i,n) for(int i=0;i<n;++i) 5 #define for1(i,n) for(int i=1;i<=n;++i) 6 #define IO std::ios::sync_with_stdio(false); std::cin.tie(0) 7 #define ll long long 8 #define LL long long 9 #define inf 0x3f3f3f3f 10 #define INF 0x3f3f3f3f3f3f3f3f 11 #define N 1000000 12 using namespace std; 13 const int maxn=1e3+50; 14 ll gcd(ll a, ll b){return b ? gcd(b, a % b) : a;} 15 ll lcm(ll a, ll b){return a * b / gcd(a, b);} 16 17 int num[maxn]; 18 19 int main() 20 { 21 int T,n,m; 22 scanf("%d",&T); 23 while(T--) 24 { 25 ll tmp,ans=1; 26 scanf("%d",&n); 27 for1(i,n) 28 { 29 scanf("%lld",&tmp); 30 ans=lcm(ans,tmp); 31 } 32 printf("%lld\n",ans); 33 } 34 return 0; 35 }