问题描述
天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标。如果一个星星的左下方(包含正左和正下)有k颗星星,就说这颗星星是k级的。
给定星星的位置,输出各级星星的数目。
给定n个点,定义每个点的等级是在该点左下方(含相等)的点的数目,试统计每个等级有多少个点。(n<=15000,0<=x,y<=32000)
分析
这题就是树状数组的模板题。
模板大概分三个部分:
- lowbit
- 单点修改函数
- 查询前缀和函数
只要在ans数组里面每次查询前缀和统计就可以。
上代码
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
typedef long long ll;
using namespace std;
int