uva 10791
来源:互联网 发布:纸箱设计用什么软件 编辑:程序博客网 时间:2024/06/05 00:08
题意:一个序列的数的LCM值是n,要求输出这个序列的最小和。LCM是指这串序列的最小公倍数。
题解:从小到大找到n所有的因子,因子从2开始到sqrt(n),因为n的因子如果有比sqrt(n)大也只会存在一个,然后分三种情况,已经写在注释中。
#include <stdio.h>#include <string.h>#include <math.h>int main() {long long n, res;int cas = 1;while (scanf("%lld", &n) && n) {res = 0;long long i = 2, temp = n, flag = 0;while (i <= sqrt(n)) {int a = 1;while (temp % i == 0) {a *= i;temp /= i;}if (a != 1) {res += a;flag++;}i++;}if (flag == 1 && temp == 1)//只有一种因子,且除尽res = n + 1;else if (temp != 1 && temp != n)//没有除尽,还有个大于sqrt(n)的因子res += temp;else if (temp == n)//是素数res = n + 1;printf("Case %d: %lld\n", cas++, res);}return 0;}
0 0
- uva 10791
- uva 10791
- Uva 10791
- UVA 10791
- UVA 10791
- uva 10791
- UVA 10791
- uva 10791
- UVA 10791
- uva 10791 溢出
- Uva 10791MininumSumLCM
- uva
- UVA
- UVA
- UVA
- uva
- UVA
- UVA
- 死死死死死死死死死
- GCC编译屏蔽内建函数
- Exception 异常
- maven常用指令
- 555555555555
- uva 10791
- win8 升级 8.1
- 第二十一章 DLL注入和API拦截
- C++函數指針和函數對象的總結
- vim使用技巧
- HDU 1754 I Hate It(线段树初步应用)
- 类似微信的文本输入框
- PHP 5.3 to 5.6 for OS X 10.6 to 10.10 as binary package
- Unity3d 动态创建对象