nyoj 517 最小公倍数(大数+求最小公倍数思想)
来源:互联网 发布:端口出现感叹号 编辑:程序博客网 时间:2024/05/20 23:55
难度:3
- 描述
- 为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致。但也并非纯粹的偶然:60是个优秀的数字,它的因子比较多。事实上,它是1至6的每个数字的倍数。即1,2,3,4,5,6都是可以除尽60。我们希望寻找到能除尽1至n的的每个数字的最小整数m.
- 输入
- 多组测试数据(少于500组)。
每行只有一个数n(1<=n<=100). - 输出
- 输出相应的m。
- 样例输入
234
- 样例输出
- 2
- 6
- 12
#include<iostream>#include<cstdio>#include<cstring>using namespace std;#define base 10000#define maxx 105void multiply(int a[],int max,int b){ int i,array=0; for(i=max-1;i>=0;i--) { array+=b*a[i]; a[i]=array%base; array/=base; }}int main(){ int n,i,b[maxx],j,a[101][maxx]; memset(a[1],0,maxx*sizeof(int)); for(i=1;i<maxx;i++) b[i]=i;//重点,相当与当前数可能是以后数的因子,则把当前数以后的数的因子去掉(也就是如果取余等于0的话就除以当前数),剩余的数相乘即可 for(i=2;i<maxx;i++) for(j=i+1;j<maxx;j++) { if(b[j]%b[i]==0) b[j]/=b[i]; }//将b[1]-b[n]中所有数相乘起来就是最小公倍数 for(i=2,a[1][maxx-1]=1;i<101;i++) { memcpy(a[i],a[i-1],maxx*sizeof(int)); multiply(a[i],maxx,b[i]); } while(scanf("%d",&n)!=EOF) { for(i=0;i<maxx&&a[n][i]==0;i++); printf("%d",a[n][i++]); for(;i<maxx;i++) { printf("%04d",a[n][i]); } printf("\n"); } return 0;}
- nyoj 517 最小公倍数(大数+求最小公倍数思想)
- NYOJ 517 最小公倍数 (1-n 个数的最小公倍数,大数)
- NYOJ 题目517 最小公倍数(大数)
- nyoj 517 最小公倍数 【java大数】
- NYOJ-517-最小公倍数,大数啊~~~
- nyoj 517 最小公倍数【数学】大数处理
- nyoj-517 求1-n的最小公倍数
- nyoj517 最小公倍数 (大数)
- NYOJ-517 最小公倍数 TLE
- 最小公倍数(nyoj 517)
- [NYOJ 517]最小公倍数
- nyoj 517 最小公倍数
- NYOJ 517 最小公倍数
- NYOJ 517 最小公倍数
- NYOJ 517 最小公倍数 (Java)
- nyoj-517 最小公倍数
- NYOJ 517 最小公倍数(java实现)
- 求最小公倍数(java)
- Oracle 默认密码及修改密码
- 2012 Multi-University Training Contest 5:Mark the Rope
- ZOJ 1051 A New Growth Industry
- 相关 /dev/null 2>&1 详解
- 程序员求职之道(《程序员面试笔试宝典》)之数据结构与算法(排序算法)?
- nyoj 517 最小公倍数(大数+求最小公倍数思想)
- 插入排序、快速排序、堆排序
- Android Service被关闭后自动重启,解决被异常kill 服务
- [iOS]深入浅出ObjC之消息
- [Python] 找寻A文件中有而B文件中没有的记录
- 贪心算法 - 哈夫曼编码 Huffman
- 带环的链表
- 范围搜索 (Range Query)
- 黑马程序员_SQL总结一