p1100 高低位交換
#include
#include
#define ll long long//定價代換ll 代替long long
void
sw(int *a,int *b)
//自定義數值交換函式
void
fun(ll n)
; ll sum=0;
int x=32;
int k=0;
while
(n)//n一直對2取餘,進而求出二進位制數
for(int i=
0;i<32/
2;i++
)//高位與低位交換(前16位與後16位交換)
for(int j=
0,i=
0;i<=
31;i++
,j++
)//二進位制數轉化為十進位制數
printf
("%lld"
,sum)
;//輸出高低位交換後的數
//sum定義成long long,因為高低交換後數值有可能大於int
}int main()
洛谷 P1100 高低位交換
給出乙個小於 2 的正整數。這個數可以用乙個 32 位的二進位制數表示 不足 32 位用 0 補足 我們稱這個二進位制數的前 16 位為 高位 後 16 位為 低位 將它的高低位交換,我們可以得到乙個新的數。試問這個新的數是多少 用十進位制表示 例如,數 1314520 用二進位制表示為 0000 ...
P1100 高低位交換
給出乙個小於2 232的正整數。這個數可以用乙個3232位的二進位制數表示 不足3232位用00補足 我們稱這個二進位制數的前1616位為 高位 後1616位為 低位 將它的高低位交換,我們可以得到乙個新的數。試問這個新的數是多少 用十進位制表示 例如,數13145201314520用二進位制表示為...
集訓作業 洛谷P1100 高低位交換
這個題簡單來說就是把乙個數轉成32位的2進製數,不夠的補0。然後把這個數的前半部分和後半部分互換,再計算結果。思路簡單明瞭,接下來是 include include include includeusing namespace std long long a,b,shu 50 s 1,zshu in...