有10个孩子站成一圈,从第一个孩子开始顺时针方向报数,报到3的人出列,下一个
人继续从1报数,直到最后剩下一个孩子为止。问剩下第几个孩子。
package com.bird.software;
import java.util.Vector;
/**
*
* @author Bird
*
*/
public class Test3 {
public static void main(String[] args){
Vector<String> a = new Vector<String>();
for(int i=1; i<=10; i++)
{
a.add("第" + i + "个孩子");
}
for(;;)
{
if(a.size()==1) break;
for(int k=0; k<2; k++){
a.add(a.remove(0));
}
a.remove(0);
}
System.out.println(a);
}
}
运行结果为
[第4个孩子]625这个数字很特别,625的平方等于390625,刚好其末3位是625本身。除了625,还
有其它的3位数有这个特征吗?还有一个!该数是:_____________
package com.bird.software;
/**
*
* @author Bird
*
*/
public class Test4 {
public static void main(String[] args){
for(int i = 100; i <= 999; i++){
long pow = i * i;
String num = String.valueOf(pow);
if(num.endsWith(String.valueOf(i)))
System.out.println(i);
}
}
}
运行结果为
376
625

本文通过两个有趣的数学问题,探讨了数字的特殊性质和算法实现。一是找出在顺时针报数游戏中最后剩下的孩子的位置;二是寻找除了625外,另一个三位数其平方的末三位与其本身相同。

被折叠的 条评论
为什么被折叠?



