競賽演算法第二版 生成元

2021-08-21 13:38:47 字數 515 閱讀 4351

一、題目

如果x加上x的各個數字之和得到y,就說x是y的生成元。給出n(1≤n≤100000),求最小生成元。無解輸出0。例如,n=216,121,2005時的解分別為198,0,1979。

二、**分析

可以把  x和y儲存成乙個陣列,如a[x]=y;通過搜尋陣列就可以得到結果

三、**

#include

#include

#include

using namespace std;

int a[100005];

int main(int argc, char** argv)

a[i]=k;             i就是k的生成元。

}int n;

scanf("%d",&n);

for(int i=0;i<=100000;i++)

if(i==10000)

printf("%d",0);

}return 0;

}

演算法競賽入門經典(第二版) 習題

習題2 5 include int main if 10 n b 10 b 5 確定末位四捨五入的情況 printf d 10 n b 1 else printf d 10 n b return 0 注意 要及時輸出,防止n越界 習題2 6 include void result int num,i...

《演算法競賽入門經典(第二版)》 隨筆

c語言中整數值用 d輸出,實數 浮點數 用 f輸出。kiss原則 keep it and stupid 獲得程式執行時間 包括鍵盤輸入時間 include printf 執行時間 2f n double clock clocks per sec 輸入個數未知時 while scanf d x 1 對...

《演算法競賽入門經典(第二版)》習題(二)

習題 2 1 水仙花數 輸出100 999中的所有水仙花數。若3位數abc滿足abc a b c 則稱其為水仙花數。例如 153 1 5 3 所以153是水仙花數。include intmain return0 習題 2 2 韓信點兵 相傳韓信才智過人,從不直接清點自己軍隊的人數,只要讓士兵先後以三...