Login with GitHub. Nope?
修正 C++ 的程式碼在使用一定量動態記憶體後會產生 RF 的問題 @ 2019/12/6 4:45pm NeoHOJ 強勢復活中 (Open beta)
Submit  Ranklist

Problem : 60 - -2進位

Problem Statistics

Solved Member: 28  Submission: 168  User Tried: 31

Statement:

計概中,你學到了如何用補數來表示電腦中的負數。

「這實在是太麻煩了!」聰明的你這樣說。
於是,你決定發明了-2進位法來表示所有整數,每位數與2進位一樣只有1或者0而已,差別只是在-2的次方。

例如說:$\large 3 = [111]_{-2} = 1 \times (-2)^2 + 1 \times (-2)^1 + 1 \times (-2)^0$。
你拍胸脯保證,所有數字絕對可以用有限個位數來表示完。

你現在需要寫一個由10進位轉換為-2進位的基礎程式開始工作,由於現在的電腦都是64位元運算,所以你寫的程式自然也不落人後支援所有64位元數字啦~

Input:Output:

輸入有多筆測資,請以EOF作為結束。
每筆測資只有一個數字N,N為long long範圍。
每筆測資輸出一行數字,代表-2進位的情況。

Sample Input:Sample Output:

3
111

Source:

UVA 11121

Problem Setter

Testdata:

TestTimeMemoryScore
01000ms65536kb
11000ms65536kb10
21000ms65536kb10
31000ms65536kb10
41000ms65536kb10
51000ms65536kb10
61000ms65536kb10
71000ms65536kb10
81000ms65536kb10
91000ms65536kb10
101000ms65536kb10