時間限制:c/c++ 1秒,其他語言2秒
空間限制:c/c++ 131072k,其他語言262144k
64bit io format: %lld
大家都知道alice和bob兩個人是一生之敵。(霧
但某天,他們兩個人發了瘋。想知道他們兩個是否可以成為朋友。
於是他們做了乙個令人窒息的決定。
alice和bob每個人任意選乙個整數。
假設alice選擇了整數a,bob選擇了整數b。
alice使得a做如下變換:
a -> 2 * a * (a+1)^2
bob使得b做如下變換:
b -> b^2
如果變換後的數字相等,則兩個人可以化敵為友。
如果不相等,這兩個人怕是石樂志。
現在,你想把bob部分可能的整數b(存在a變換後的數字等於b變換後的數字)從小到大排列後,知道第乙個大於等於n的數字是多少。
第一行輸入乙個整數t,表示資料組數。每組資料輸入乙個整數n。
1 <= t <= 100000
0 <= n <= 10^19
保證結果存在
輸出乙個整數。示例1
32 6
100
66114
這道題當時讀了很久,一直搞不懂樣例是怎麼出來,還是做的題少,沒有語感,中文題目都這樣了,何況英文題;
讀懂題意之後,一看資料範圍就知道是二分查詢,只需要把a和b做一下變換即可:
b^2 = 2*a*(a+1)^2 -> b = sqrt(2*a)*(a+1);
因為sqrt(2*a)是整數,所以令2*a=4*t*t,所以a=2*t*t;
所以就轉換成b=2*t*(2*t*t + 1),所以只需二分
#include #include using namespace std;
#define max 3e6
typedef unsigned long long ull;
int main()
ull l = 0, r = max, m, t, ans;
while(l <= r)
else
} printf("%llu\n",ans);
} return 0;
}
尋找zcmu 2017浙江中醫藥大學程式設計
時間限制 c c 1秒,其他語言2秒 空間限制 c c 131072k,其他語言262144k 64bit io format lld 一年一度的浙江中醫藥大學程式設計校賽正在火熱進行,舉辦至今這是第十一屆校賽了。那麼今年就來尋找一下zcmu。這裡有一串只包含小寫字母的字串,裡面有若干個zcmu,你...
浙江中醫藥大學2018級新生程式設計競賽
題目很簡單,兩個for迴圈巢狀一下,控制下每行左後一位的換行直接輸出就好了。include include include include include includeusing namespace std typedef long long ll typedef unsigned long lo...
浙江中醫藥大學程式設計代表隊2023年訓練賽十一
time limit 1 sec memory limit 128 mb submit 9 solved 3 submit status web board 3000公尺長跑時,圍觀黨們興高采烈地 著 最後的排名。因為他們來自不同的班,對所有運動員不一定都了解,於是他們分別對自己了解的一些運動員的實...