社区
Java SE
帖子详情
课本上的一个题目不会做
Y382904800
2008-03-07 07:21:03
输出400以内的Smith数。Smith数是指满足下列条件的可分解的整数:其所有数位上的数字和=其全部素数因子的数字总和
例如:9975是Smith数,9975=3*5*5*7*19 ,即全部素数因子的数字总和。
...全文
108
2
打赏
收藏
课本上的一个题目不会做
输出400以内的Smith数。Smith数是指满足下列条件的可分解的整数:其所有数位上的数字和=其全部素数因子的数字总和 例如:9975是Smith数,9975=3*5*5*7*19 ,即全部素数因子的数字总和。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
haisenmai
2008-03-07
打赏
举报
回复
http://www.java-cn.com/bbs-jsp/show.jsp?id=144949
haisenmai
2008-03-07
打赏
举报
回复
[java学习]给人写的求400内的SMITH数
素数判定算法比较臭,时间复杂太大...算很大的数会等到你吐血,求改进版
/**
*SMITH.java
*Author:ArEs
*/
import java.util.ArrayList;
public class SMITH{
//取得素数因子表
public ArrayList getPrimeFactor(int num){
ArrayList pfList=new ArrayList();
int pf=2;
if(isPrime(num)){
pfList.add(0,num);
return pfList;
}
while(pf<num){
if(isPrime(pf)){
if(num%pf==0){
pfList.add(pf);
num/=pf;
pf=1;
if(isPrime(num)){
pfList.add(num);
break;
}
}
}
pf++;
}
return pfList;
}
//各位上的数字之和
public int getBitAdd(int num){
int sum=0;
while(num!=0){
sum+=num%10;
num/=10;
}
return sum;
}
//素数判断
public boolean isPrime(int num){
int i=2;
if(num<=1)return false;
for(;i<num;i++){
if(num%i==0)break;
}
if(i<num)return false;
else return true;
}
public static void main(String []args){
int smith=2;
int pf=0;
SMITH s=new SMITH();
ArrayList pfList=new ArrayList();
while(smith<400){
pfList=s.getPrimeFactor(smith);
pf=0;
for(int i=0;i<pfList.size();i++){
pf+=s.getBitAdd(Integer.parseInt(pfList.get(i).toString())); //这里有没有其他方法?
};
if(s.getBitAdd(smith)==pf){
System.out.println (smith+"\t"+pfList);
}
smith++;
}
}
}
//http://blog.donews.com/ArEs/archive/2005/06/07/416438.aspx
对于计算机网络课本中
一个
题目
理解
原
题目
如下: 试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit)。从源站到目的站共经过k段链路,每段链路的传播时延为d(s),数据率为b(b/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小? 分析
题目
:电路交换的过程是先建立连接,然后传输数据,最后
蓝桥杯--算法训练 Hanoi问题
蓝桥杯–算法训练 Hanoi问题 一.比赛
题目
1.
题目
要求 如果将
课本上
的Hanoi塔问题稍
做
修改:仍然是给定N只盘子,3根柱子,但是允许每次最多移动相邻的M只盘子(当然移动盘子的数目也可以小于M),最少需要多少次? 例如N=5,M=2时,可以分别将最小的2个盘子、中间的2个盘子以及最大的
一个
盘子分别看作
一个
整体,这样可以转变为N=3,M=1的情况,共需要移动7次。 2.输入与输出 输入: ...
python课本课后题答案,python教材课后答案
传递
一个
空字符串将会避免在打印的文本的末尾移动到下
一个
输入行——下
一个
print将会保持添加到当前输出行的末尾。大家好,本文将围绕python课本课后题答案展开说明,python教材课后答案是
一个
很多人都想弄明白的事情,想搞清楚python书课后答案需要先了解以下几个事情。运行结果:跟
课本上
的代码稍微有一点不同,end = ’ '加了空格,个人觉得这个好看一点。sep——用来分割
一个
打印输输出文本的多个对象,如果没有传递的话,其默认是
一个
空格。注意:1、[ ]中的项是可选的。2、=后面的值都是默认参数值。
初一数学下册电子课本_电子课本 | 初一数学七年级下册(冀教版)
更多期末真题、历年真题、电子书请关注后,在公众号底部导航栏查询~近期,我们会整理、发布初中、高中各年级的电子书,帮助需要的老师和同学们,敬请关注!初一数学七年级下册(冀教版)——《END》——来源:网络等,版权归属原作者。声明:本公众号转载的内容,仅作分享之用,如内容在版权上存在争议,请联系删除!初中各年级电子课本汇总初三上学期各学科电子课本初三语文九上电子课本(部编版)初三物理九上电子...
二叉树常见
题目
及C++实现
文章目录
题目
一 实现二叉树先序中序后序遍历,包括递归和非递归实现
题目
二:如何直观地打印一颗二叉树
题目
三:在二叉树中找到某
一个
节点的后继节点
题目
一 实现二叉树先序中序后序遍历,包括递归和非递归实现 关于三种遍历方式的递归在数据结构的
课本上
应该写的很清楚,理解起来很简单,不多
做
总结。 通过看视频多了一点理解,在二叉树的递归遍历中,因为递归实现本质上是个系统栈,所以每个节点都会访问到三次,包括...
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章