對於乙個由0…n的所有數按公升序組成的序列,我們要進行一些篩選,每次我們取當前所有數字中從小到大的第奇數字個的數,並將其丟棄。重複這一過程直到最後剩下乙個數。請求出最後剩下的數字。
輸入描述:
每組資料一行乙個數字,為題目中的n(n小於等於1000)。
輸出描述:
一行輸出最後剩下的數字。
輸入例子:
輸出例子:
#include
#include
#include
/*初始第乙個數是:0
第1次進行奇數字刪除後,第乙個數變成:1
第2次進行奇數字刪除後,第乙個數變成:3
第3次進行奇數字刪除後,第乙個數變成:7
第4次進行奇數字刪除後,第乙個數變成:15
第5次進行奇數字刪除後,第乙個數變成:31
第6次進行奇數字刪除後,第乙個數變成:63
第7次進行奇數字刪除後,第乙個數變成:127
第8次進行奇數字刪除後,第乙個數變成:255
可以發現規律:2的n次方-1
在第c次進行奇數字刪除後只剩下1個數,最後那個數就是所求的數
*/int
main()
int a=
pow(
2,c)-1
;//a是2的c次方-1
printf
("%d\n"
,c);
printf
("%d\n"
,a);
return0;
}
美團2016招聘筆試 奇數字丟棄
對於乙個由0 n的所有數按公升序組成的序列,我們要進行一些篩選,每次我們取當前所有數字中從小到大的第奇數字個的數,並將其丟棄。重複這一過程直到最後剩下乙個數。請求出最後剩下的數字。輸入描述 每組資料一行乙個數字,為題目中的n n小於等於1000 輸出描述 一行輸出最後剩下的數字。輸入例子 500輸出...
美團2016招聘筆試 奇數字丟棄
1 美團2016招聘筆試 奇數字丟棄 對於乙個由0 n的所有數按公升序組成的序列,我們要進行一些篩選,每次我們取當前所有數字中從小到大的第奇數字個的數,並將其丟棄。重複這一過程直到最後剩下乙個數。請求出最後剩下的數字。輸入描述 每組資料一行乙個數字,為題目中的n n小於等於1000 輸出描述 一行輸...
美團2016招聘筆試 奇數字丟棄
略 因為是從0開始,所以第一輪移走的是二進位制下最右邊為0的位置 從0開始的偶數字置 上的數,然後我們發現第二輪各個number的位置等於number 2,即從number位置到number 1位置,這時候我們依然移走二進位制下最右邊為0的位置 1 01 5 101 9 1001 它們第二輪對應的位...