陣列形式的整數加法

2021-10-04 17:21:06 字數 987 閱讀 7681

對於非負整數 x 而言,x 的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果 x = 1231,那麼其陣列形式為

[1,2,3,1]。

給定非負整數 x 的陣列形式 a,返回整數 x+k 的陣列形式。

解題思路:此題是用乙個數的陣列形式 + 乙個整數, 返回和的陣列形式。 模擬加法進行逐位相加,

從低位向高位相加,最後整體逆置,得到最終結果

每一位的值 = 對應位值的和 + 前一位的進製

每一位的值計算出來之後,需要檢查是否需要進製

最高位計算之後,需要考慮是否還需要向上進製

void

reverse

(int

* nums,

int begin,

int end)

}// 本題需要特別注意對[9,9,9,7] + 5的等特殊情況的處理

int*

addtoarrayform

(int

* a,

int asize,

int k,

int* returnsize)

int x2 =0;

//如果k大於0,獲取k的第i位

if(k >0)

//第i位的結果:每一位的值 + 進製

int ret = x1+x2+next;

//如果結果大於9,需要進製

if(ret >9)

else

//存入第i位的結果到陣列中

addret[reti++

]= ret;

}//如果最高位有進製,需要在存入1

if(next ==1)

//逆置結果

reverse

(addret,

0, reti-1)

;*returnsize = reti;

return addret;

}

陣列形式的整數加法

對於非負整數 x 而言,x 的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果 x 1231,那麼其陣列形式為 1,2,3,1 給定非負整數 x 的陣列形式 a,返回整數 x k 的陣列形式。示例 1 輸入 a 1,2,0,0 k 34 輸出 1,2,3,4 解釋 1200 34 1234 ...

陣列形式的整數加法

題目 對於非負整數 x 而言,x 的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果 x 1231,那麼其陣列形式為 1,2,3,1 給定非負整數 x 的陣列形式 a,返回整數 x k 的陣列形式。示例 1 輸入 a 1,2,0,0 k 34 輸出 1,2,3,4 解釋 1200 34 12...

陣列形式的整數加法

力扣 第989題 對於非負整數 x 而言,x 的陣列形式是每位數字按從左到右的順序形成的陣列。例如,如果 x 1231,那麼其陣列形式為 1,2,3,1 給定非負整數 x 的陣列形式 a,返回整數 x k 的陣列形式。示例 1 輸入 a 1,2,0,0 k 34 輸出 1,2,3,4 解釋 1200...