Median断点法求区间-匹配-memset数组与vector
生活随笔
收集整理的這篇文章主要介紹了
Median断点法求区间-匹配-memset数组与vector
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Sample Input
3
4 4
2 4 3 1
4 3
1 3 4
4 3
2 3 4
Sample Output
YES
YES
NO
題意 :
- 將1 - n的n個整數(shù)分成m個集合,滿足第i個集合的中位數(shù)為bi,求是否存在解。中位數(shù)定義為c[(k + 1) / 2],相當(dāng)于123中的2或者1234中的2
思路 :
- 顯然b數(shù)組的m個數(shù)放在m個集合,剩下的n - m個數(shù)要放到這m個集合中且不影響原本的中位數(shù)。比如對于樣例n = 6, m = 2,b = {3, 5}時,集合被分為[1,2], [4], [6]三段。且任意兩段中的一對數(shù)字可以被配對消掉,以及最后剩下來的數(shù)字一定是同一段內(nèi)的。
- 如果長度最大的段的長度mx <= 其他段數(shù)之和sum,直接輸出YES,反之,那么這一段最后會剩下數(shù)字,此時當(dāng)且僅當(dāng)這一段左邊的集合(中位數(shù)小于這一段的中位數(shù))個數(shù) 大于等于 這一段剩下的數(shù)字的個數(shù) 時(把剩下的數(shù)字放在分別放在左邊那幾個集合的右邊,利用1234中2是中位數(shù)的性質(zhì)),為YES,否則為NO
總結(jié)
以上是生活随笔為你收集整理的Median断点法求区间-匹配-memset数组与vector的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Yes, Prime Minister
- 下一篇: Intervals on the Rin