牛客小白月賽24 B 組隊 二分

2022-01-19 17:28:31 字數 966 閱讀 7436

解析:先把陣列排序,我們需要取某一段,這一段的最大-最小<=k,關鍵是取哪一段。可以對於每個數,往後找,找到第乙個減它》k的,這中間一段就滿足了任意兩個數之差<=k了。找的過程可以用upper_lound(,,x),它返回第乙個大於x的數。當然也可以直接手寫二分了。

#include#include

#include

#include

#include

#include

using

namespace

std;

typedef

long

long

ll;const

int maxn=2e5+10

;ll a[maxn];

intmain()

cout

} }

或者直接手寫二分了

#include#include

#include

#include

#include

#include

using

namespace

std;

typedef

long

long

ll;const

int maxn=2e5+10

;ll a[maxn];

intmain()

else

l=mid+1

; }

maxx=max(maxx,l-i);

}

cout

}

}

牛客小白月賽24 B 組隊

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 題目描述 你的團隊中有 n個人,每個人有乙個能力值 ai 現在需要選擇若干個人組成乙個團隊去參加比賽,由於比賽的規則限制,乙個團隊裡面任意兩個人能力的差值必須要小於...

牛客練習賽24 B 鳳 凰

很久很久很久以前沒寫出來的題,現在突然想起來把它給補了 思路 對於1號節點的若干個兒子節點,我們發現其上有鳥的時間其實就等去該子樹的大小 1,然後該樹上的鳥到根節點又需要1秒,所以我們只需要找出根節點的若干個兒子中最大的子樹就行,用vector存圖會超時,所以直接就用鏈式前向星寫了 includeu...

牛客小白月賽24 題解

牛客小白月賽24 題解 最後還剩一道計算幾何,其實可以ak,但沒必要 b 簽到 include using namespace std const int n 2e5 10 int a n int main printf d n ans return 0 c 還行 includeusing name...