(Problem 5)Smallest multiple
2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.
What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?
1 #include <stdio.h> 2 #include <string.h> 3 #include <ctype.h> 4 #include <math.h> 5 6 #define N 20 7 8 int gcd(int a, int b) 9 { 10 if(b==0) 11 return a; 12 else 13 return gcd(b,a%b); 14 } 15 16 int lcm(int a, int b) 17 { 18 return a/(gcd(a,b))*b; 19 } 20 21 22 void solve() 23 { 24 int i,s=2; 25 for(i=3; i<=N; i++) 26 { 27 s=lcm(s,i); 28 } 29 printf("%d\n",s); 30 } 31 32 int main() 33 { 34 solve(); 35 return 0; 36 }
Answer:
|
232792560 |
作者:cpoint
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.