XDOJ B進製加法

2021-07-02 14:03:01 字數 954 閱讀 9967

時間限制: 1 sec  

記憶體限制: 128 mb

提交: 301  

解決: 62 [

提交][

狀態][

討論版]

小w在iphone上裝了乙個計算器程式,可以處理b進製數。亮亮對此非常鄙視,說:「我口算都能把b進製數的加減乘除算出來!」

現有有兩個b進製正整數x、y,亮亮算出了它們的和(也用b進製表示)。你需要寫乙個對拍程式。

對於大於10進製的整數,在數字9之後用a~f表示10~15。

輸入包含多組資料,請處理到eof。

每組資料1行,包含乙個十進位制正整數b,以及兩個b進製非負整數x、y,用空格分割。

對於100%的資料,滿足2<=b<=16,結果的十進位制表示不超過18位。

輸入檔案滿足測試資料組數小於等於10000。

對於每組輸入,輸出1行,1個b進製數,表示x和y的和。

10 1 2

2 1 1

16 9 2

16 a a

310b

14

思路:通過自己定義b進製可得

#include#include#includelong long int mi(long long int a,long long int b)

if(a[i]=='b')

if(a[i]=='c')

if(a[i]=='d')

if(a[i]=='e')

if(a[i]=='f')}}

return v;

} int main()

i=0;

h1=fuyuan(x,b);

h2=fuyuan(y,b);

sum0=h1+h2;

for(j=0;j<200;j++)

fun(sum0,b,a,i);

j=0;

while(1)

for(j=0;j

無進製加法

先考慮乙個多項式做法 根據套路從高到低位確定答案。令當前位 i 為 0 貪心的讓後面合法。顯然把 1 i 1 位都設成 1 進行判定。考慮當前 a 的最大值 v 掃到第 j 位。如果 v 的長度大於 j 顯然無解 否則如果 v 的第 i 位為 0 則刪除最大值繼續判定。如果 v 的第 i 為為 1 ...

20進製資料加法

計算20進製 引數1 20進製結果 public static string getres string x,string y char a x.tochararray char b y.tochararray 檢驗格式是否正確 foreach char ah in a foreach char a...

任意進製加法計算

目前是限制一百位以內的,如果要修改更長的話也很容易。測試了一下,還行,如果有什麼錯誤希望大家指出來 include include include define ary 30 定義進製 30進製 char px unsigned char c chang char c else if c a c j...