a有1數m,b來猜.b每猜一次,a就說"太大","太小"或"對了" 。
問b猜n次可以猜到的最大數。
input
第1行是整數t,表示有t組資料,下面有t行
每行乙個整數n (1 ≤ n ≤ 30)
output
猜n次可以猜到的最大數
sample input
213
sample output
17
author
zhousc
source
ecjtu 2008 summer contest
題目大意:
如題。思路:
假設 n 為 3. 那麼是這樣的。
第一次猜 4 結果有兩種 , 太大 ,太小
如果太大的話 下一次可以猜 2
如果太小的話 下一次可以猜 6
第二次猜 2 的話結果有兩種 太大 (第三次 1 ) 或者 太小 ( 第三次 3 )
第二次猜 6 的話結果有兩種 太大 (第三次 5 ) 或者 太小 ( 第三次 7 )
這樣的話就形成了乙個樹結構。
4
2 6
1 3 5 7
這樣就把所有的數字遍歷一次啦。
另乙個樣例資料:
猜的時候不能漏下數字呀,對不對?!?如果任意猜的話那麼資料無限大就沒意思了。
其實這個排完序來看的話,就是乙個二叉樹結構。
對於二叉樹結構來看的話。最大的數就是 2^d-1 d為深度。
感想:呼呼,感覺還是挺難的,還不太理解吧可能。剛才忘了把讀入外部檔案的那句話 注釋掉 出現了乙個奇怪的錯誤。
ac**:
#include #include#include#include#include#include#include#include#include#include#include#includeusing namespace std;
int main()
{ //freopen("r.txt","r",stdin);
int t,n;
scanf("%d",&t);
while(t--)
{scanf("%d",&n);
n=pow(2,n)-1;
cout<
SDAU 課程練習2 1002
f x 6 x 7 8 x 6 7 x 3 5 x 2 y x sample output 74.4291 178.8534 author redow 題目大意 給定函式和 y 值 求函式最小值。思路 連續求導可知導函式單調遞增,並且 f 0 0 f 100 0那麼導函式的零點就是原函式的最小值。二...
2016SDAU課程練習一1000
簡單題意 有400個房間 搬一次需要10分鐘。輸入 幾 組資料,房間編號 m 到 n 求最少需要多少分鐘。樣例 sample input 3 4 10 20 30 40 50 60 70 80 2 1 3 2 200 3 10 100 20 80 30 50 sample output 10 203...
2016SDAU課程練習一1006
簡單題意 只有乙個電梯。上樓需要六分鐘,下樓需要四分鐘,每一層停留五分鐘。輸入n組資料,按照特定的順序上下樓,求總共需要的時間。解題思路及形成過程 雖然放在貪心演算法的專題,但是顯然用傻瓜法更容易。感想 第一次這麼快速的解決一道題。ac include include using namespace...