模板 數字拆解 (數值轉換 特殊乘法題解)

2021-09-19 08:49:04 字數 1204 閱讀 6826

這是一類簡單的問題。

1.對於不超過int的數,可以直接讀入整數,通過不斷求模再除以10的形式獲得每乙個數字,將它們存在陣列裡。

2.對於超過int的數,考慮以字串形式讀入,然後依次處理每一位,將它們存在陣列裡面。需要注意的是,以字串讀入的時候,字串的高位儲存的是數的低位。

求任意兩個不同進製非負整數的轉換(2進製~16進製制),所給整數在long所能表達的範圍之內。  

不同進製的表示符號為(0,1,...,9,a,b,...,f)或者(0,1,...,9,a,b,...,f)。  

輸入只有一行,包含三個整數a,n,b。a表示其後的n 是a進製整數,b表示欲將a進製整數n轉換成b進製整數。a,b是十進位制整數,2 =< a,b <= 16。  

資料可能存在包含前導零的情況。  

可能有多組測試資料,對於每組資料,輸出包含一行,該行有乙個整數為轉換後的b進製數。輸出時字母符號全部用大寫表示,即(0,1,...,9,a,b,...,f)。  

15 aab3 7
210306
//數制轉換

//15 aab3 7

//210306

#includeusing namespace std;

int main(void)

//轉換成10進製

char ans[100];

int count=0;

dowhile(num);//轉換為n進製

for(int i=0;i寫個演算法,對2個小於1000000000的輸入,求結果。

特殊乘法舉例:123 * 45 = 1*4 +1*5 +2*4 +2*5 +3*4+3*5

兩個小於1000000000的數

輸入可能有多組資料,對於每一組資料,輸出input中的兩個數按照題目要求的方法進行運算後得到的結果。

123 45

54
//特殊乘法 

#includeusing namespace std;

int main(void)

while(b!=0)

int ans = 0;

for(int i=0;i} cout<} return 0;

}

數字拆解 1

題目1083 特殊乘法 題目描述 寫個演算法,對2個小於1000000000的輸入,求結果。特殊乘法舉例 123 45 1 4 1 5 2 4 2 5 3 4 3 5 輸入 兩個小於1000000000的數 輸出 輸入可能有多組資料,對於每一組資料,輸出input中的兩個數按照題目要求的方法進行運算...

數字拆解(王道)

題目描述 寫個演算法,對2個小於1000000000的輸入,求結果。特殊乘法舉例 123 45 1 4 1 5 2 4 2 5 3 4 3 5 輸入 兩個小於1000000000的數 輸出 輸入可能有多組資料,對於每一組資料,輸出input中的兩個數按照題目要求的方法進行運算後得到的結果。樣例輸入 ...

數論 數字拆解 特殊乘法

數字拆解 特殊乘法 時間限制 1 秒 記憶體限制 32 兆 題目描述 寫個演算法,對2個小於1000000000的輸入,求結果。特殊乘法舉例 123 45 1 4 1 5 2 4 2 5 3 4 3 5 輸入 兩個小於1000000000的數 輸出 輸入可能有多組資料,對於每一組資料,輸出input...