
树状数组
Mr.Gzj
这个作者很懒,什么都没留下…
展开
-
HDU 2642 Stars
Problem DescriptionYifenfei is a romantic guy and he likes to count the stars in the sky.To make the problem easier,we considerate the sky is a two-dimension plane.Sometimes the star will be bright...原创 2018-12-26 19:40:57 · 181 阅读 · 0 评论 -
P3157 [CQOI2011]动态逆序对 (树套树/树状数组套主席树)
题意:动态计算逆序对,给出n,m,n是数组大小,m是删的数的个数,要求每次删完数后剩下的逆序对个数。思路:若普通主席树的话,每次删一个数,则要更新后面n个数的大小,复杂度nlogn,直接爆炸,所以考虑一种可以单点修改和区间查询的数据结构,线段树或树状数组都可以,不过显然树状数组好写,所以用树状数组来代替主席树的root数组,求出总的逆序对后,每次删除一个数m就减去从1到m-1求大于m的数的个数...原创 2019-09-26 23:42:43 · 193 阅读 · 0 评论 -
D. Yaroslav and Divisors顺序统计+树状数组
题意:给你一组nnn个数字,这些数字是1 n1~n1 n的一个排列。现在有很多个询问,询问给定一个区间,问区间内有多少个整除对。思路:设sum[i]sum[i]sum[i]为从1到i的所有整除对数量。对于区间[l,r][l,r][l,r],我们知道,区间[l,r][l,r][l,r]的整除对数量是sum[r]−sum[l−1]sum[r]-sum[l-1]sum[r]−s...原创 2019-09-09 15:28:03 · 277 阅读 · 0 评论 -
NCPC 2012 Problem B Bread Sorting
题意是给一个数列,可以对三个数操作:把最后一个数放到第一个,前两个数后移一位。问最后能否到达相应的目标序列。比如 1 2 3 会转换为3 1 2,多了两个逆序对。给出两列数a和b,问a是否能变成b,则求a对于b的逆序对,若为偶数,则可以变成b,若为奇数,则不能。#include<bits/stdc++.h>#define INF 0x3f3f3f3f#define l...原创 2019-04-11 21:02:58 · 384 阅读 · 0 评论 -
P1966 火柴排队(树状数组离散化+逆序对)
#include<bits/stdc++.h>#define INF 0x3f3f3f3f#define ll long long#define lowbit(x) (x&(-x))#define MOD 99999997using namespace std;const int N = 100010;int a[N], n, c[N], b[N], tree[...原创 2019-04-11 20:36:18 · 192 阅读 · 0 评论 -
poj2299(树状数组离散化水题)
#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>#include<string>#include<vector>#include<queue>#include<cmath>#def原创 2019-03-09 15:28:03 · 168 阅读 · 0 评论 -
P2345 奶牛集会(树状数组)
题目背景MooFest, 2004 Open题目描述约翰的N 头奶牛每年都会参加“哞哞大会”。哞哞大会是奶牛界的盛事。集会上的活动很多,比如堆干草,跨栅栏,摸牛仔的屁股等等。它们参加活动时会聚在一起,第i 头奶牛的坐标为Xi,没有两头奶牛的坐标是相同的。奶牛们的叫声很大,第i 头和第j 头奶牛交流,会发出max{Vi; Vj}×|Xi − Xj | 的音量,其中Vi 和Vj 分别是...原创 2018-12-25 19:15:36 · 409 阅读 · 0 评论 -
POJ3928 ping pong
题目链接:uva 1428 - Ping pong具体就是枚举每个裁判,左边比裁判小的个数乘以右边比裁判大的个数,以及左边比裁判大的个数乘以右边小的个数,总和即为结果.#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define l...原创 2018-12-27 18:02:31 · 204 阅读 · 0 评论 -
HDU3015Disharmony Trees(树状数组+离散化)
Problem DescriptionOne day Sophia finds a very big square. There are n trees in the square. They are all so tall. Sophia is very interesting in them.She finds that trees maybe disharmony and th...原创 2018-12-26 23:51:36 · 196 阅读 · 0 评论 -
HDU1166 敌兵布阵
Problem DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视。...原创 2018-12-26 21:32:56 · 241 阅读 · 0 评论 -
POJ2155 - Matrix (二维树状数组)
MatrixTime Limit: 3000MS Memory Limit: 65536K Total Submissions: 20599 Accepted: 7673 DescriptionGiven an N*N mat...原创 2018-12-26 21:31:55 · 119 阅读 · 0 评论 -
DFS序
DFS序就是将树形结构转化为线性结构,用dfs遍历一遍这棵树,进入到x节点有一个in时间戳,递归退出时有一个out时间戳,x节点的两个时间戳之间遍历到的点,就是根为x的子树的所有节点,他们的dfs进入时间戳是递增的。同时两个时间戳构成了一个区间,x节点在这段区间的最左端,这个区间就是一棵根节点为x的子树,对于区间的操作就是其他维护方式的应用了。模板题:POJ3321题意:给一个普通...原创 2019-10-04 23:06:29 · 253 阅读 · 1 评论