2007年5月12日 星期六

Armstrong

二、數學上 Armstrong 數可表示為 a^3 + b^3 + c^3 = abc,寫出所有三位數的 Armstrong 數。

output:
370

困難度:*
時間複雜度:O(n)
程式語言:C++
預估時間:15 分鐘

解題原理:
1. 先判斷欲輸出幾位數的阿姆斯壯數
2. 分別產生各個位數0~9的排列方式進行阿姆斯壯數比較
3. 完成

程式下載


原碼下載

參考來源:長榮大學2007校內程式設計競賽複賽 試題 二

2 則留言:

Hello Wayling 提到...

請問為啥是O(n)??

不是三for嗎

陳勤達 提到...

O(n) 想法:

for(int i=100; i <= 999; i++)
{
int a = i 的第一位數;
int b = i 的第二位數;
int c = i 的第三位數;
...
}