POJ1142 HDU1333 ZOJ1133 Smith Numbers【质因数分解+素数判定+数位之和】
问题链接:POJ1142 HDU1333 ZOJ1133 Smith Numbers。
题意简述:寻找大于输入数并且最接近的Smith Numbers。
问题分析:
Smith Numbers数不是素数,其各位数字之和等于其各个因子的各位数字之和。。
程序说明:
函数digitsum()用于计算数的各位数字之和。
函数fact_digitsum用于计算数的各个因子的数字之和,但是若为素数则返回-1。函数中对因子的数量进行了计数,若为1则数为素数。
AC的C++语言程序如下:
/* POJ1142 HDU1333 ZOJ1133 Smith Numbers */#include <iostream>using namespace std;const int BASE10 = 10;inline int digitsum(int n)
{int sum = 0;while(n) {sum += n % BASE10;n /= BASE10;}return sum;
}int fact_digitsum(int n)
{int digitsum2 = 0, count = 0;for(int i=2; i*i<=n; i++) {while(n % i == 0) {count++;digitsum2 += digitsum(i);n /= i;}}if(n > 1 && count)digitsum2 += digitsum(n);if(count == 0)digitsum2 = -1;return digitsum2;
}int main()
{int n;while(cin >> n && n) {for(n++; ; n++) {if(digitsum(n) == fact_digitsum(n)) {cout << n << endl;break;}}}return 0;
}
POJ1142 HDU1333 ZOJ1133 Smith Numbers【质因数分解+素数判定+数位之和】相关推荐
- 素数、最大公约数、最下公倍数、质因数分解
2013-08-18 11:20:43 素数.最大公约数.最下公倍数.质因数分解都是与素数相关的,解决了素数的问题,其他的都可以此为基础求解. 小结: 求1到n之间的素数的基本方法是通过遍历2到sqr ...
- C++判断是否为素数、求一个数的因数、质因数分解
判断一个数是否为素数 #include<iostream> #include<vector> #include<math.h> #include<algori ...
- 水仙花数素数质因数分解的C语言实现
最近,我翻了一下之前的C语言教材,看了三个有意思的小程序,包括:寻找"水仙花数".判断某数是否为素数.对一个数进行质因数分解.我想把这三个东西放到一个程序中,便写下了此文. 算法步 ...
- 素数判定质因数分解(数论)(Miller Rabin)(Pollard Rho)
太玄学了! 我真的被概率的魅力折服了.此前我认为1便是1,0.9999999999-便是0.9999999999-. 但实际上它们有着千丝万缕的关系. 试想,如果一件事发生的概率是0.99999999 ...
- Smith Numbers POJ - 1142 (暴力+分治)
题意:给定一个N,求一个大于N的最小的Smith Numbers,Smith Numbers是一个合数,且分解质因数之后上质因子每一位上的数字之和 等于 其本身每一位数字之和(别的博客偷的题意) 思路 ...
- ACMNO.39 分解质因数 求出区间[a,b]中所有整数的质因数分解。蓝桥杯训练!
题目描述 求出区间[a,b]中所有整数的质因数分解. 输入 输入两个整数a,b. 输出 每行输出一个数的分解,形如k=a1*a2*a3...(a1< =a2< =a3...,k也是从小到大 ...
- C++实现质因数分解
质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除(除0以外)的数称之为素数(质数):否则称为合数.根据算术基本定理,每一个比1大的整数,要 ...
- bzoj2721樱花——质因数分解
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2721 可以知道 x 和 y 一定都大于 n! ,不妨把 y 表示为 n!+t : 那么 1/ ...
- 数学概念——J - 数论,质因数分解
J - 数论,质因数分解 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit ...
最新文章
- cms基于nodejs_我如何使基于CMS的网站脱机工作
- 吴恩达家免费 NLP 课程重磅上线!110 个小视频教你做出聊天机器人,粉丝:我要让娃跟吴恩达姓!...
- 《基于PLL分频计数的LED灯闪烁实例》实验记录
- 数据库本地的sa有个叉号_搞定sql数据库出错,做自己的大神!
- PermGen space处理方法1
- 【2011-04-06】SQL Server 2000 日志传送搭建
- Mysql对字符串去掉前后空格(trim)或者指定字符
- Caddy - Web服务器的新秀 高性能 配置简单 动态代理 负载均衡
- 为什么下雨天容易犯困
- 组合数据浅析之“幻方”
- 史上最详细的hadoop安装教程
- 数据库优化---空间换时间优化
- 微信小程序实现全局登陆状态
- 如何将一段视频做成动图?分享一款视频转gif工具
- 如何定义 Symbian WINS模拟器的内存配置
- Oracle Number 精度坑
- 需求评审会如何做才不会沦为形式主义
- Mybatis常用标签详解
- 2021年全球指拨开关收入大约420.8百万美元,预计2028年达到519.8百万美元
- oracle对某两列求和再求和_分手再狠也不怕,3步让他主动求和
热门文章
- 游戏经济系统分析:通货与交易
- python要求将字符串循环右移n次_python 基础知识
- 一、Nginx源码安装与yum安装
- 宾夕法尼亚在线计算机硕士,申请访谈:宾夕法尼亚大学(Upenn)计算机科学(CS)的录取攻略...
- bash git 如何切换目录_【git】命令行与本地仓库/远程仓库
- delphi 子接口是否实现父接口_您可以从子类接口的接口调用父接口的默认方法吗?...
- 机器学习代码实战——朴素贝叶斯(实现垃圾邮件分类)
- 多线程—— Queue(储存进程结果)
- 泸州市的电子计算机学校名称,泸州电子计算机机械学校2020年招生简介
- mysql数据库最多列_mysql多列索引和最左前缀