立方尾不变(蓝桥杯真题)

立方尾不变(蓝桥杯真题)

问题描述

有些数的立方的末尾正好是该数字本身(例如1,4,5,6,9,24,25),请你计算一下10000以内,符合这个特征的正整数一共有多少个

思路解析

题目其实很简单,只要了解String中的substr方法,用该方法截断字符串,再将结果进行判断即可。
这里提供新的思路

例如:
4x4x4=64 将64除以10取余就可以得到4
24x24x24=13824 将13824除以100取余就可以得到24


该数字小于10就除以10
该数字大于10小于100就除以100
该数字大于100小于1000就除以1000

综上所述,代码如下

private static int count;

	public static void main(String[] args) {
    
    
		for(long i=1;i<=10000;i++) {
    
    //i的立方比较大,这里用long型
			if(i<10) {
    
    				
				if(i*i*i%10==i) count++;				
			}else if(i<100) {
    
    
				if(i*i*i%100==i) count++;
			}else if(i<1000) {
    
    
				if(i*i*i%1000==i) count++;
			}else if(i<10000) {
    
    
				if(i*i*i%10000==i) count++;
			}
		}
		System.out.println(count);
	}

输出结果:36

猜你喜欢

转载自blog.csdn.net/qq_45657198/article/details/112703049
今日推荐