卧薪尝胆,厚积薄发。
矿石
Date: Sun Sep 30 13:40:31 CST 2018
In Category:
NoCategory
Description:
数轴上有
$n$
个线段,
$m$
个点,问这些线段的
$2^n-1$
种组合中有多少都经过同一个点。
$1\leqslant n \leqslant 10^5$
Solution:
直接统计肯定会有重复计算,考虑对每个线段统计他作为集合的最后一条线段使得方案数,先把每条线段缩到他两边的点上,这样两个线段如果相交就一定有一个点在这两个线段上,所以只要统计有多少线段和它相交就会对答案有
$2^k$
的贡献,统计这个可以把线段按左端点排序然后用双指针,遇到开头就加一,遇到结尾就减一,时间复杂度
$O(n\log_2 n)$
。
Code:
In tag:
数学-计数
Copyright © 2020
wjh15101051
ღゝ◡╹)ノ♡