2 27 演算法練習

2021-10-20 18:18:02 字數 593 閱讀 6346

時間限制:1.0s 記憶體限制:512.0mb

給定n個十六進製制正整數,輸出它們對應的八進位制數。

輸入的第一行為乙個正整數n (1<=n<=10)。

接下來n行,每行乙個由09、大寫字母af組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。

輸出n行,每行為輸入對應的八進位制正整數。239

123abc

714435274

先將十六進製制數轉換為二進位制數,再將二進位制數轉換為八進位制數

定義h,b,存入十六進製制數,將轉化的二進位制數存入b中。

用length求得b的長度,如果長度是3的倍數不進行處理,如果長度除3餘數為1在b的前兩位加「00」,如果長度除3餘數為2在b的前兩位加「0」。

遍歷b,每三位一組轉換為八進位制數,定義flag標誌,來忽略前導的0

#include#includeusing namespace std;

int main()

for(map>::iterator it1 = a.begin();it1 !=a.end();it1++)

} return 0;

}

SICP練習 57 練習2 27

練習2.27 又是修改程式的題目,要求我們寫出的deep reverse函式要將表中的元素也反轉過來,這其中應該要用到遞迴來實現吧。define deep reverse tree cond null?tree not pair?tree tree else reverse list deep re...

SICP練習 57 練習2 27

練習2.27 又是修改程式的題目,要求我們寫出的deep reverse函式要將表中的元素也反轉過來,這其中應該要用到遞迴來實現吧。define deep reverse tree cond null?tree not pair?tree tree else reverse list deep re...

SPOJ 227 樹狀陣列

題意 給定乙個排列和陣列b i 表示i前面比a i 小的點的個數,求a i n的乙個排列 solution 維護乙個c陣列,表示c 從右向左對每個b i 找到最小的j 使c j b i 則a i j 如何維護c 樹狀陣列 如何查詢j 二分 include include include includ...