摘要:
在一个数列a中,满足a[ i ]>a[ j ]并且i a[ j ]就会产生mid-i+1个逆序对,因为做归排的时候l~mid和mid+1~r都是已经排好序的,要是a[ i ]>a[ j ]那么a[ i+1 ]... 阅读全文
摘要:
在一个数列a中,满足a[ i ]>a[ j ]并且i a[ j ]就会产生mid-i+1个逆序对,因为做归排的时候l~mid和mid+1~r都是已经排好序的,要是a[ i ]>a[ j ]那么a[ i+1 ]... 阅读全文
摘要:
题目大意就是求[l,r]和n互质的数的个数 做法就是反着求,求不和n互质的数的个数,然后相减即可。先把n分解出质因数存在数组里,每个质因数在[l,r]内的倍数组成一个集合该集合里的数就是和n不互质的数,我们... 阅读全文
摘要:
题目大意就是求[l,r]和n互质的数的个数 做法就是反着求,求不和n互质的数的个数,然后相减即可。先把n分解出质因数存在数组里,每个质因数在[l,r]内的倍数组成一个集合该集合里的数就是和n不互质的数,我们... 阅读全文
摘要:
这是我第一次写容斥定理的题,题目就是让你求[l,r]区间和集合a无关的数的个数,一个数若与集合a无关,则集合a里任何一个数都不是他的因数,也就是该数不是集合a里任何一个数的倍数,正难则反,所以我们可以先求出反... 阅读全文
摘要:
这是我第一次写容斥定理的题,题目就是让你求[l,r]区间和集合a无关的数的个数,一个数若与集合a无关,则集合a里任何一个数都不是他的因数,也就是该数不是集合a里任何一个数的倍数,正难则反,所以我们可以先求出反... 阅读全文
摘要:
题目大意就是给你n个数,然后进行m次操作,区间更新,然后查询区间和。 这题有点特别,因为更新[l,r]时,不是常规的那种更新例如把[l,r]内的每个数换成v或把[l,r]里的每个数都增加v,而是[l,r]内... 阅读全文
摘要:
题目大意就是给你n个数,然后进行m次操作,区间更新,然后查询区间和。 这题有点特别,因为更新[l,r]时,不是常规的那种更新例如把[l,r]内的每个数换成v或把[l,r]里的每个数都增加v,而是[l,r]内... 阅读全文
摘要:
模板题,区间更新,把l到r区间的每个数都换成z #includeusing namespace std;const int maxn=100005;struct node{ int l,r; i... 阅读全文
摘要:
模板题,区间更新,把l到r区间的每个数都换成z #includeusing namespace std;const int maxn=100005;struct node{ int l,r; i... 阅读全文