首頁| 新聞| 娛樂| 游戲| 科普| 文學| 編程| 系統| 數據庫| 建站| 學院| 產品| 網管| 維修| 辦公| 熱點
給出n個點,每個點有三圍(x,r,f) 兩個點是沖突的,當|xi?xj|≤min(ri,rj)且|fi?fj|≤k. k給出。 n≤105,0≤k≤10
想法一: 按x從大到小枚舉點,每次在kdtree中詢問xj≤xi+ri且xj?rj≤xi且|fj?fi|≤k的點的個數加入答案,再將(xi,xi?ri,fi)插入KDtree里。
覺得想法一要寫起來好長,再想想
想法二: k最大就10,對每一個f值建二維線段樹,然后查詢?
還是好長
想法三: CDQ啊!。。忘了怎么寫了,感覺也不短
想法四: 對每一個f將x離散化,并建BIT,存儲差分數據,來表示線段(xi?ri,xi+ri)的覆蓋(xi?ri的地方插入1,xi+ri+1的地方插入-1) 對所有點按照xi從大到小枚舉,對fi?k到fi+k的BIT詢問xi位置覆蓋了幾條線段,加入答案中。 同時將xi?ri記錄下來,每次詢問之前將xj?rj<xi的點都在相應的BIT中刪去,這樣就能保證每次詢問合法了。
索泰發布一款GTX 1070 Mini迷
AMD新旗艦顯卡輕松干翻NVIDIA
索泰發布一款GTX 1070 Mini迷你版本:小機
芭蕾舞蹈表演,真實美到極致
下午茶時間,悠然自得的休憩
充斥這繁華奢靡氣息的城市迪拜風景圖片
從山間到田野再到大海美麗的自然風景圖片
肉食主義者的最愛美食烤肉圖片
夏日甜心草莓美食圖片
人逢知己千杯少,喝酒搞笑圖集
搞笑試卷,學生惡搞答題
新聞熱點
疑難解答
圖片精選
使用ASP建設私人搜索引擎
華為短消息中心的發展與應用
移動通信計費及客戶服務系統
移動客戶服務中心系統
網友關注