第六屆藍橋杯題目(java)-奇妙的數字
阿新 • • 發佈:2019-02-06
【題目描述】
《奇妙的數字》小明發現了一個奇妙的數字。它的平方和立方正好把0~9的10個數字每個用且只用了一次。你能猜出這個數字是多少嗎?
請填寫該數字,不要填寫任何多餘的內容。
【題目分析】
1)利用Java 的set集合,集合中的數字不可以重複;
2)在while迴圈中分別算出平方與立方,並且將各個位數的數字放到set集合中,如果set集合的大小正好等於10,則結束迴圈。
【程式碼設計】
【結果】這個數字是 69;該數的平方: 4761;該數的立方: 328509。import java.util.HashSet; import java.util.Set; public class Number { public static void main(String[] args) { Set<Integer> set=new HashSet<Integer>(); int Num=0,Quadratic=0, Cube=0, n=0; while(n!=10){ Num++; set=new HashSet<>(); Quadratic=Num*Num; Cube=Num*Num*Num; while(Quadratic>0){ set.add(Quadratic%10); Quadratic/=10; } while(Cube>0){ set.add(Cube%10); Cube/=10; } n=set.size(); } System.out.println("這個數字是: "+Num); } }
【總結】java中的set集合很好用,適合做此類題目
第一次寫部落格,希望大家提出意見,謝謝!