題目描述
春天是鮮花的季節,水仙花就是其中最迷人的代表,數學上有個水仙花數,他是這樣定義的: “水仙花數”是指一個三位數,它的各位數字的立方和等于其本身,比如:153=1^3+5^3+3^3。 現在要求輸出所有在m和n范圍內的水仙花數。
輸入
輸入數據有多組,每組占一行,包括兩個整數m和n(100<=m<=n<=999)。
輸出
對于每個測試實例,要求輸出所有在給定范圍內的水仙花數,就是說,輸出的水仙花數必須大于等于 m,并且小于等于n,如果有多個,則要求從小到大排列在一行內輸出,之間用一個空格隔開; 如果給定的范圍內不存在水仙花數,則輸出no; 每個測試實例的輸出占一行。
樣例輸入
100 120 300 380
樣例輸出
no 370 371
using System;namespace ConsoleApp6
{class Program{static void Main(string[] args){string s;while (true){s = Console.ReadLine();if(s==null||s.Length<=0){break;}string[] str = s.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);int a = Int32.Parse(str[0]);int b = Int32.Parse(str[1]);int[] arr = new int[120];int t = 0;for (int i = a; i <= b; i++){string s1 = i.ToString();int len = s1.Length;int sum = 0;for (int j = 0; j < len; j++){int temp = (int)s1[j] - 48;sum += temp * temp * temp;}if (sum == i){arr[t] = sum;t++;}}if (t == 0){Console.WriteLine("no");}else{int i = 0;Console.Write(arr[i].ToString());i++;for (; i < t; i++){Console.Write(" " + arr[i].ToString());}Console.Write("\n");}s = null;}}}
}
?