題目鏈結
大概的意思就是2個陣列,元素兩兩組合,求組合最小的最大值。(最大值最小)
可以初步猜想,這樣的最大值最小一定出現在a公升序與b降序的兩兩對應中。
驗證:
a公升序,b降序。找到一組最大值,假設這一組不是最小的最大值,那麼要麼a與其他值換,要麼b與其他值換,無論怎麼樣,最大值都會增大。
開始用set tl了,後來想了想,應該用multiset。
再嘗試桶排序,但是每一次插入值,都拷貝了乙個新陣列,還是tl
最後再次優化,不要拷貝。只需要將2個陣列掃一遍就ok,還是tl。
最後吧cin改為scanf,cout改為printf
ac!差距真大!
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define scanf scanf_s
#define inf 0x3f3f3f3f
#define ll long long
#define mod 100000007
using
namespace
std;
int main()
while (!pb&&bi >= minb)
sum = max(ai + bi, sum);
if (pa > pb)
else
if (pa < pb)
else
}printf("%d\n", sum);
}puts("");
}}
有一種鋒芒你不得不露
軟柿子最好捏 朵朵的前兩個單位都是只有三四個人的極小公司,她覺得沒意思。目前這個待了一年半的公司,比以前強點兒,員工六個。雖然公司大了一丁點兒,但內部爭鬥仍舊激烈。年紀最輕的monica,是老闆朋友的女兒,能力一般,但手裡捏著老爸的不少客戶資源 julia在公司待三年了,屬於元老 kathy業務能力...