給定某數字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 的範圍,甚至double,所以必須要按照單個單個去運算。其實該題可以化成乘法去運算,舉個例子:當n=3時,a=1,a=1,可以依次輸出aa,a(a+1)…直到a=n為止。
這道題第一次看的以為是簡單的計算題,想利用pow函式在結合四則運算去寫,但發現得到結果執行超時和答案錯誤,拿筆在紙上寫幾次運算時,就發現其中規律,結合陣列依次輸出每一位數就行。#include
#define n 200000
intmain()
c--;}
if(d[e]
||!b)
for(e=b;e>=
1;e--)}
//原理分析,當a=1,b=3時,由第8行到17行計算,d[1]=3*1,d[2]=2*1,d[3]=1*1;將其依次輸出,就是所要求的數列和。 當d[e]的數字大於9
//d[e+1]=d[e]/10,d[e]%=10.
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 數列求和 加強版
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 思路 直接用長整形累加 簡單,但...
(題解)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 31.n最大為10000,不可用定義整形去求和,需用陣列儲存和的每一位,模擬進製...