藍(lán)橋杯備賽DAY(1)---二分算法入門(mén)
【題目鏈接】
P1571 眼紅的Medusa - 洛谷 | 計(jì)算機(jī)科學(xué)教育新生態(tài) (luogu.com.cn)

【數(shù)據(jù)范圍】

首先,這道題目是要求我們求出,在兩個(gè)數(shù)組中都出現(xiàn)的數(shù)字,并且按照科技創(chuàng)新獎(jiǎng)的順序輸出,我們可以發(fā)現(xiàn)這是一道數(shù)據(jù)查找的題目,常見(jiàn)的數(shù)據(jù)查找的算法有二分算法,雙指針?biāo)惴ǎK惴ǖ?。這里我們講解二分專(zhuān)題,就使用二分算法。
【二分算法】
二分算法的使用,需要滿足數(shù)據(jù)具有單調(diào)性,通常是利用下標(biāo)單調(diào)性或者數(shù)據(jù)單調(diào)性進(jìn)行二分。我們發(fā)現(xiàn)需要按照科技創(chuàng)新獎(jiǎng)的順序輸出,所以我們采取保持科技創(chuàng)新獎(jiǎng)數(shù)組不變,另一個(gè)數(shù)組進(jìn)行排序,然后我們可以順序查找科技創(chuàng)新獎(jiǎng),二分特殊貢獻(xiàn)獎(jiǎng)。具體實(shí)現(xiàn)看代碼,排序使用的是STL的sort函數(shù)(人懶,不想手寫(xiě))。

【二分模板】


標(biāo)簽: