j032. 11933 - Splitting Numbers
Tags :
Accepted rate: 37人/ 37人 ( 100%) [非即時]
評分方式:
Tolerant

最近更新 : 2022-10-10 23:06

Content

我們定義將二進制數 n 拆分為兩個數 a(n)、b(n) 的操作如下。
令 i1 < i2 < ...... < ik 是 n 中為 1 的位置。

則 a(n) 為 n 中的 1 的奇數位置組成 i1, i3, i5, ......

且 b(n) 為 n 中的 1 的偶數位置組成 i2, i4, i6, ......

例如:

如果 n 在二進制中是 110110101  => [1, 1, 0, 1, 1, 0, 1, 0, 1] => [i6, i5, 0, i4, i3, 0, i2, 0, i1]

那麼同樣在二進制中,我們有 a = 010010001 和 b = 100100100。

以下為題目原文:

Input

每行有一個十進位數字 n (1 ≤ n ≤ 2^31-1)

如果輸入為 0 則結束

Output

輸出一行包含兩個十進位整數 a(n)、b(n)並以空白做分隔

 

Sample Input #1
6
7
13
0
Sample Output #1
2 4
5 2
9 4
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (50%): 1.0s , <1K
公開 測資點#1 (50%): 1.0s , <1K
Hint :
Tags:
出處:
UVA [管理者: ig99lp33lp33 (위즈원) ]

Status Forum 排行

ID User Problem Subject Hit Post Date
41905 s10900156@nh ... (ShanC) j032
簡單題
292 2024-09-08 22:07