hdoj 2028 Lowest Common Multiple Plus (最小公倍数,最大公约数)
2016-04-03 14:34
696 查看
Lowest Common Multiple Plus
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 49546 Accepted Submission(s): 20479
Problem Description
求n个数的最小公倍数。
Input
输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。
Output
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。
Sample Input
2 4 6 3 2 5 7
Sample Output
12 70 代码:#include <iostream> #include <cstdio> using namespace std; int f(int a,int b) { int m; int t; int ta=a,tb=b; if(a<b) { t=a;a=b;b=t; } while(b) { m=a%b; a=b; b=m; } return ta/a*tb;//返回最大公倍数 } int main() { long long sum; int n,a[110]; while(~scanf("%d",&n)) { sum=1; for(int i=0;i<n;i++) { scanf("%d",&a[i]); sum=f(sum,a[i]); } printf("%lld\n",sum); } return 0; } #include <cstdio> int f(int a,int b) { int t; int m; if(a<b) { t=a;a=b;b=t; } while(b) { m=a%b; a=b; b=m; } return a;//返回最大公约数 } int main() { int m; int n,a[110]; while(~scanf("%d",&n)) { scanf("%d",&a[0]); for(int i=1;i<n;i++) { scanf("%d",&a[i]); m=f(a[i-1],a[i]); a[i]=a[i-1]/m*a[i]; } printf("%d\n",a[n-1]); } return 0; }
相关文章推荐
- CDN缓存策略FAQ及更新频率
- 增加多层标签数量
- Cocos2d-x 3.9教程:5. Cocos2d-X中事件添加回调的方法
- 如何做好全屏化的交互体验(解决EditText导致的界面上移、挡住等问题)
- Notepad++简单配置c#开发
- SQL SERVER 2008 R2数据库出现“远程过程调用失败”(0x800706be)错误,怎么办!!
- 广播接收者Broadcast Receiver
- 207. Course Schedule 图的dfs算法
- mesos 集群安装部署规划、准备(1)
- Morris Traversal方法遍历
- hdu1284 钱币兑换问题(完全背包)
- 动态规划之Multiplication Puzzle
- 虚方法
- 2016郑州大学ACM/ICPC训练赛 B 追踪术
- Git Workflow工作流示意图
- API集合框架-LinkedList
- ACM-水题 Demacia of the Ancients
- 《机器学习(周志华)》习题10.1 答案
- 模版方法-设计模式
- 分类器评价与在R中的实现:收益图与提升图