思路题意:给n个区间和m个查询,要求对于每一个查询区间,覆盖该区间需要的区间数量最少是多少做法:预处理出来每一个点i被覆盖的情况下,可以延申到最右的是多少,然后用倍增的思想,处理出dp[i][j]表示从i这个点出发,经过2^j个区间能到达的最右的点是哪个点。状态转移方程:dp[i][j]=dp[dp[i][j-1]][j-1]:从 i 点跳2^ j 次最右点是 i 点跳2^ j-1次,再跳2^ j-1次之后只要从后往前遍历dp,求出第一个小于查询区间 r 的dp[l][j],在判断一下 当前跳了