首页 > 【YY笔试】暴力求解水仙花数(java)
头像
西瓜🍉菌
编辑于 2020-08-31 22:21
+ 关注

【YY笔试】暴力求解水仙花数(java)

笔试的时候思路出了问题没有做出来,一直死循环,没有用main方法调试(哭)
    /**
     * 找到比输入的整数大的下一个水仙花数
     * @param n int整型 输入的整数
     * @return long长整型
     */
    public static long nextNarcissisticNumber (int n) {
    	if(n<9) return n+1;
    	int count,flower,temp;
    	int j = 0;
    	while(true) {
        	temp = n+(++j);
    		count = 0;
    		flower = 0;
//    		判断是几位数
        	while(temp!=0) {
        		temp = temp/10;
        		count++;
        	}
        	temp = n+j;
//        	计算,判断当前数是否为水仙花数,如果是则跳出while循环
        	for(int i=0;i<count;i++,temp=temp/10) flower += Math.pow(temp%10,count);
        	if(flower==n+j) break;
    	}
    	return flower;
    }


考后重新整理思路写了上述解法,还是比较暴力,希望有大佬交流一下更高级的解法

全部评论

(2) 回帖
加载中...
话题 回帖

推荐话题

  • 58555次浏览 193人参与

相关热帖

近期精华帖

热门推荐