亂搞 二分 AOJ 615 神算諸葛亮

2022-08-19 18:30:11 字數 771 閱讀 4173

description

相傳有一天,諸葛亮把將士們召集在一起,說:「你們中間不論誰,從1~1024中任意挑選乙個整數,記在心裡,我提十個問題,只要求回答'是'或'大於','小於'.十個問題全答完以後,我 就會『算』出你心裡記的那個數。」諸葛亮剛說完,乙個謀士站起來說,他已經選好了乙個數。諸葛亮問道:「你選的數大於512?」謀士答:「不是。」諸葛亮又接連向這,謀士提了九個問題,謀士一一作了回答。諸葛亮最後說:「你記的那個數是1。」謀士聽了極為驚奇,因為這個數字真是他選的數。你知道諸葛亮是怎麼妙算的嗎?現在給你乙個整數n,表示你要猜乙個範圍為【1,n】的數字(這個數字已經提前確定了),你知道最壞情況下猜幾次才能確定答案嗎?

input

輸入包括多組資料,以檔案(eof)結束。

每組測試資料報括乙個整數n(1<= n <= 10 ^ 9)

output

每組測試資料輸出乙個整數,表示最多猜幾次才能確定答案。

sample input

1024

2

sample output

10

1

思路:可以直接取log2 但是我是模擬的

每次二分 然後取較大的部分繼續二分 直到可以一次確定

#include int main()  

while((n-a)!=1) //取右端點每次二分 直到n-a==1 因為到不了n

printf("%d\n",num);

} return 0;

}

bzoj1992鬼谷子的錢袋 二分亂搞 二進位制

time limit 10 sec memory limit 162 mb submit 3223 solved 2333 鬼谷子非常聰明,正因為這樣,他非常繁忙,經常有各諸侯車的特派員前來向他諮詢時政。有一天,他在咸陽遊歷的時候,朋友告訴他在咸陽最大的拍賣行 聚寶商行 將要舉行一場拍賣會,其中有一...

1128 二分 二分查詢

時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 描述nettle最近在玩 艦 因此nettle收集了很多很多的船 這裡我們假設nettle氪了很多金,開了無數個船位 去除掉重複的船之後,還剩下n 1 n 1,000,000 種不同的船。每一艘船有乙個稀有值,任意兩艘船的稀有...

二分(二分答案 二分搜尋)與單調性

經典二分搜尋是二分空間範圍。二分答案又叫二分猜值,是二分解的值空間。其實可以統一,普通的二分搜尋也是二分答案值域 下標空間,也是猜值。二分必須滿足單調性,最直觀的,二分搜尋只能在有序陣列上進行。單調性體現在,下標和元素值是單調的,也就是 if j i 有 a j a i 一般二分答案解決的問題是最優...