20
2016-07
2016-07
HDU 5726 GCD (RMQ+二分)
题目链接:点我~~
题意:给你n个数,m个询问,每次询问某个区间,求这段区间所有数的gcd,然后问1~n所有连续区间中gcd的值等于区间所有数gcd的个数~~
思路:对于求区间gcd可以用线段树维护,或者RMQ,因为后者的查询是O(1)~还是比较方便的。对于所有区间的gcd,考虑枚举左端点,二分区间进行预处理~例如12467,以1为左端点,1~5为右端点5个...
07月20日
2,107
20
2016-07
2016-07
HDU 5289 Assignment (RMQ+二分)
题意:求存在最大差值小于给定K值的区间段个数。
思路:利用RMQ求出区间最大最小值,再枚举右端点,二分区间找到满足要求的最大区间累加~~
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
t...
07月20日
2,088