(題解)7 38 數列求和 加強版

2021-10-19 07:31:15 字數 601 閱讀 7318

給定某數字a(1≤a≤9)以及非負整數n(0≤n≤100000),求數列之和s=a+aa+aaa+⋯+aa⋯a(n個a)。例如a=1, n=3時,s=1+11+111=123。

輸入數字a與非負整數n。

輸出其n項數列之和s的值。

1 31. n最大為10000,不可用定義整形去求和,需用陣列儲存和的每一位,模擬進製,然後列印陣列,求得結果。

2. aa···a(n個a)可以表示為(10n - 1)a/9,則s=(a/9)*(11···10 - n),其中11···10有n個1,由於a在1~9之間,故和s的位數一定是n位或n+1位。

#include

#include

intmain()

else

if(p[n]==0

)//第n+1位為0,從第n位列印

}else

//第n+1位不為0,從第n+1位列印

}printf

("\n");

free

(p);

p=null;}

return0;

}

7 38 數列求和 加強版

給定某數字a 1 a 9 以及非負整數n 0 n 100000 求數列之和s a aa aaa aa a n個a 例如a 1,n 3時,s 1 11 111 123。輸入數字a與非負整數n。輸出其n項數列之和s的值。1 3123最近這些天一直在玩,沒怎麼寫 看到這題直覺就是像以前一樣開闢字元陣列,昨...

7 38 數列求和 加強版

給定某數字a 1 a 9 以及非負整數n 0 n 100000 求數列之和s a aa aaa aa a n個a 例如a 1,n 3時,s 1 11 111 123。輸入數字a與非負整數n。輸出其n項數列之和s的值。如果這道題按數學中的四則運算去直接計算結果,該資料會超出long long 的範圍,...

7 38 數列求和 加強版

7 38 數列求和 加強版 20 分 給定某數字a 1 a 9 以及非負整數n 0 n 100000 求數列之和s a aa aaa aa a n個a 例如a 1,n 3時,s 1 11 111 123。輸入數字a與非負整數n。輸出其n項數列之和s的值。1 3123 思路 直接用長整形累加 簡單,但...