hdu 6288 二分法加精度處理問題)

2022-06-27 18:33:12 字數 516 閱讀 4707

題意:給出a,b,k,n可滿足(n^a)*(⌈log2n⌉)^b<=k

'>k ,

求最大的n值

三個正整數a,b

,k(1

≤a,b

≤10,10

6≤k≤

1018

)'>a,b,k(1≤a,b≤10,10^6≤k≤10^18)

題目思路:這類給數學式子求n的最大值,且資料量大且多的,考慮時間複雜度,我們採用二分法找出n

思路:很明顯就是二分n,向上取整可以先預處理出2^62,然後直接迴圈找到b的底數j,處理n^a*j^b一開始我們用的是powl,但是被卡精度了,卡了好久,我們也因為這題而崩潰了,正常狀態下可以做的題也不會做。又沒想到換一種check的方法。一直卡了3小時,後來才知道原來可以用k先除以a個n,再除以b個j,然後判斷如果小於1就return0,否則return1。

k'>a,

b,k(

1≤a,

b≤10,

106≤k

≤1018)

'>

hdu6288(取對數 二分)

缺失的資料範圍 著名出題人小q出過非常多的題目,在這個漫長的過程中他發現,確定題目的資料範圍是非常痛苦的一件事。每當思考完一道題目的時間效率,小q就需要結合時限以及評測機配置來設定合理的資料範圍。因為確定資料範圍是一件痛苦的事,小q出了非常多的題目之後,都沒有它們設定資料範圍。對於一道題目,小q會告...

C 二分法查詢,遞迴二分法

用二分法來求需要查詢的值.includeusing namespace std 查詢key元素是否存在 int findkey const int buf 100 const int ilen,const int key else right left mid 1 查詢失敗 return 1 查詢k...

python二分法查詢 Python 二分法查詢

二分法查詢主要的作用就是查詢元素 lst 1,3,5,7,12,36,68,79 資料集 百萬級資料 num int input 請輸入你要查詢的元素資訊 for el in lst if num el print 存在 break else print 不存在 len lst 0 1 2 3 4 ...