題目45 進製轉換

2021-10-04 12:01:43 字數 1029 閱讀 2272

補充知識

c/c++中int,long,long long的取值範圍:

unsigned int 0~4294967295

int -2147483648~2147483647

unsigned long 0~4294967295

long -2147483648~2147483647

long long的最大值:9223372036854775807

long long的最小值:-9223372036854775808

unsigned long long的最大值:18446744073709551615 //20位

__int64的最大值:9223372036854775807

__int64的最小值:-9223372036854775808

unsigned __int64的最大值:18446744073709551615

題目描述

將乙個長度最多為 30 位數字的十進位製非負整數轉換為二進位制數輸出。

輸入: 多組資料,每行為乙個長度不超過 30 位的十進位製非負整數。 (注意是 10 進製數字的個數可能有 30 個,而非 30bits 的整數)

輸出: 每行輸出對應的二進位制數。

樣例輸入:01

38樣例輸出:01

111000

解題思路

//有難度 

#include

using

namespace std;

intmain()

//跳出迴圈後 len記錄的s的長度

int i=0;

int len_res=0;

while

(ielse}if

(num[i]==0

)//可能前幾次不為 0,再迴圈

}for

(int i=len_res-

1;i>=

0;i--)

cout<}return0;

}

題目1138 進製轉換

題目描述 將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。輸入 多組資料,每行為乙個長度不超過30位的十進位製非負整數。注意是10進製數字的個數可能有30個,而非30bits的整數 輸出 每行輸出對應的二進位制數。樣例輸入 013 8 樣例輸出 0111 1000 include ...

FAFU OJ 進製轉換題目

進製轉換題目 time limit 1000ms memory limit 65536kb total submissions 59accepted 28 share description 輸入乙個十進位制數n,將它轉換成r進製數輸出。input 輸入資料報含多個測試例項,每個測試例項包含兩個整數...

題目45 棋盤覆蓋

在乙個2 k 2 k 1 k 100 的棋盤中恰有一方格被覆蓋,如圖1 k 2時 現用一缺角的2 2方格 圖2為其中缺右下角的乙個 去覆蓋2k 2k未被覆蓋過的方格,求需要類似圖2方格總的個數s。如k 1時,s 1 k 2時,s 5 第一行m表示有m組測試資料 每一組測試資料的第一行有乙個整數數k ...