你好呀,我是灰小猿,一個超會寫bug的程式猿!
歡迎大家關注我的專欄“每日藍橋”,該專欄的主要作用是和大家分享近幾年藍橋杯省賽及決賽等真題,決議其中存在的演算法思想、資料結構等內容,幫助大家學習到更多的知識和技術!
標題:立方變自身
觀察下面的現象,每一個數字的立方按位相加之后得到的數字還是它的自身,
1^3=1
8^3=512 5+1+2=8
17^3=4913 4+9+1+3=17
......
請你計算包括1、8、17在內的所有符合要求的正整數一共有多少個?
請填寫該數字
不要填寫任何多余的或說明性文字
解題思路:
本題作為填空題來說,相對難度還是比較簡單的,按照正常的思路,我們只需對數字進行列舉判斷即可,但是對于列舉的物件應該是要有一個范圍的,我們知道數字越大,那么這個數字的立方當然也就會越大,當一個數字的立方足夠大時,顯然他的每一位的數字和是不可能和該數字相等的,所以我們就只需要將列舉范圍設定在1~99即可,求出每一個數字的立方之后,將該立方數的每一位相加判斷是否等于該數即可,
答案原始碼:
public class Year2015_Bt2 { public static void main(String[] args) { int ans = 0; for (int i = 1; i <= 99; i++) { int cube = i*i*i; int n=0; while (cube>0) { n += cube%10; cube /= 10; } if (n==i) { ans++; // System.out.println(n); } } System.out.println(ans); } }
輸出樣例:
其中有不足或者改進的地方,還希望小伙伴留言提出,一起學習!
感興趣的小伙伴可以關注專欄!
灰小猿陪你一起進步!

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/267418.html
標籤:其他

