ural1028 Stars (树状数组)
2017-02-22 17:14
405 查看
因为数据中的y坐标已经是安照升序排序,所以可以完全不用考虑y,只考虑x。由于之前的y坐标都小于等于当前的,后面的肯定也不会等级比当前点低,所以我们只需要统计之前的点中x坐标小于等于当前点的有多少个,这种的话,可以很容易想到使用树状数组来维护。
#include <bits/stdc++.h> using namespace std; const int N = 320005; int sum , ans ; inline int Lowbit(int x) { return x & -x; } void ChangeSum(int p, int x) { for (; p < N; p += Lowbit(p)) sum[p] += x; } int QuerySum(int p) { int ans = 0; for (; p > 0; p -= Lowbit(p)) ans += sum[p]; return ans; } int main() { int n; scanf("%d", &n); memset(sum, 0, sizeof(sum)); for (int i = 0; i < n; i++) { int x, y; scanf("%d%d", &x, &y); x++; ans[QuerySum(x)]++; ChangeSum(x, 1); } for (int i = 0; i < n; i++) printf("%d\n", ans[i]); return 0; }
相关文章推荐
- Ural 1028 Stars(树状数组)
- Ural 1028. Stars(树状数组)
- ural 1028【树状数组】
- Ural_1028. Stars(数状数组)
- 【树状数组】poj2352 stars
- hdu 1541/poj 2352:Stars(树状数组,经典题)
- HDU ACM 1541 Stars(树状数组)
- stars 第一个树状数组,水过~
- HDU 1541 Stars(树状数组)
- HDU 1541 Stars(树状数组-水题,模板题)
- POJ 2352 Stars 【树状数组】
- poj2352 Stars(树状数组)
- POJ 2352 Stars(树状数组)
- poj 2352 Stars (树状数组)
- POJ - 2352 Stars (树状数组)
- poj 2352 Stars(树状数组)
- poj 2352 Stars(树状数组)
- hdu_1541 Stars (树状数组)
- 【树状数组】hdu 1541 Stars
- POJ 2481 Cows && POJ 2352 Stars(树状数组妙用)