2017 8 11訓練日記(二分)

2021-08-06 02:27:52 字數 576 閱讀 6750

今天本來打算做簡單佇列的,結果第乙個題tle了十次qaq

開始是記得用scanf和printf效率是高一點的,但這個題12000ms還是tle了;

再說二分查詢:

二分查詢就是將查詢的鍵和子陣列的中間鍵作比較,如果被查詢的鍵小於中間鍵,就在左子陣列繼續查詢;

如果大於中間鍵,就在右子陣列中查詢,否則中間鍵就是要找的元素。

//二分查詢確實是比較基礎而且好用的演算法,而且節省時間,常用於去優化**

偽**left = 0, right = n -1

while (left <= right)

mid = (left + right) / 2

case

x[mid] < t:    left = mid + 1;

x[mid] = t:    p = mid; break;

x[mid] > t:    right = mid -1;

return -1;

一般用來查詢某個數的下標(任意)

查詢第乙個大於等於某個數的下標

查詢第乙個大於某個數的下標

再就是以上形式的變種

////

訓練日記 20161024

初賽好像不會掛了,好開心!版權原因,不上傳題目。題意 求1 n n 1000 的排列中逆序對恰好為 k 個的排列數目。多測。題解 f i j 表示前 i 個數,逆序對個數恰好為 j的排列個數,易得轉移方程f i j i 1k 0f i 1 j k 用字首和優化可使複雜度降為o n2 題意 對於乙個長...

訓練日記 20170324

長久不更新部落格了。期間經歷了恰好被ag線踩的wc,經歷了漫長痛苦的小高考準備。現在終於可以重整旗鼓,向省選進發!幾個月來,唯一不變的是我仍然是個超級蒟蒻 版權原因,不上傳題目。題意 最小樹形圖 去年就接觸 聽說 過的演算法,一直沒有真正寫過。因為各種奇怪的細節錯誤,調了好幾個小時 比如找環時沒有判...

訓練日記 20170328

今天的題目似乎很水 好多人都提前ak離場了,於是提前一小時收題。但是我還是各種不會。思維江化?話說,聽到一句很有趣的話 山不在高,有林則徐 水不在深,有江 題意 給定一棵有n n 105 個節點的有根樹,編號互不重複。詢問有多少棵子樹內節點編號構成乙個連續區間。題解 水題,對於每個節點 i 記錄以該...