zoj1133
来源:互联网 发布:摇奖转盘软件 编辑:程序博客网 时间:2024/05/23 01:32
题目大意:
Smith数的定义是各位数字之和与它的各个质因数(可以重复)的各位数字之和的总和相同的数,且不是素数。给一个数n,算出比n大的最小的Smith数。
解题思路:
从n+1开始遍历
代码如下:
#include<stdio.h>#include<string.h>#include<math.h>#include<stdlib.h>int CalDigitsSum(int num){ int sum=0; while(num) { sum+=num%10; num/=10; } return sum;}int PrimaryCal(int num){ int total=0; int tempNum=num; int i; int temp; for(i=2;i*i<=num;i++) { if(num%i==0) { temp=CalDigitsSum(i); } while(num%i==0) { total+=temp; num/=i; } } if(tempNum==num) { return -1; } if(num!=1) { total+=CalDigitsSum(num); } return total;}int main(){ int n,i; while(scanf("%d",&n)&&n) { for(i=n+1;;i++) { if(CalDigitsSum(i)==PrimaryCal(i)) { printf("%d\n",i); break; } } } return 0;}
0 0
- zoj1133
- zoj1133
- POJ1142 HDU1333 ZOJ1133 Smith Numbers【质因数分解+素数判定+数位之和】
- 2016寒假总结 — 和局是象棋最高境界
- 字符串匹配-BM算法改进SUNDAY--Boyer-Moore-Horspool-Sunday Aglorithm
- rtmp协议总结
- Nginx的配置
- HTML学习总结(更新中。。。)
- zoj1133
- 输出执行操作和打印日志的shell脚本
- Android文件的读取操作整合
- 炫酷的放射状弹出按钮菜单 - Swift版 AwesomeMenu:源码+gif
- 洛谷 P1208 [USACO1.3]混合牛奶 Mixing Milk
- Redis Cluster集群介绍
- 支付宝支付(自己做项目总结的)
- 2017要加油
- 检测 MySQL 是否宕掉,如果宕掉则启动