題解
這題只能用 C++ 喔
如果第 $i$ 張為 $1$,則獲得 $i$ 分
這意味著我們要從最後那張開始詢問,這樣才能得到最高的分數
程式碼
#include "lib0003.h"
int sol(int n){
for(int i = n /* 從最後一張開始 */ ; i > 0; i--) {
if(ask(i) /* 詢問第 i 張是否為 1 */ )
return i; /* 如果是,則回傳這張卡的編號 i */
}
return 1;
}
Comments:
#1 回覆
去學 C++ (by:Cheng0928)