数 星 星 S t a r s 数星星 Stars 数星星Stars


题目描述

天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标。如果一个星星的左下方(包含正左和正下)有 k k k 颗星星,就说这颗星星是 k k k级的。

给定星星的位置,输出各级星星的数目。

一句话题意:给定 n n n个点,定义每个点的等级是在该点左下方(含正左、正下)的点的数目,试统计每个等级有多少个点。


输入

第一行一个整数 N N N,表示星星的数目;

接下来 N N N行给出每颗星星的坐标,坐标用两个整数 x , y x,y x,y表示;

不会有星星重叠。星星按 y y y坐标增序给出, y y y坐标相同的按 x x x 坐标增序给出。


输出

N 行,每行一个整数,分别是 0 级,1 级,2 级,……,N−1 级的星星的数目。


样例输入

5
1 1
5 1
7 1
3 3
5 5


样例输出

1
2
1
1
0


数据范围与提示:

对于全部数据,1≤N≤1.5×104 ,0≤x,y≤3.2×104


题目解析

我刚看到题目的时候以为是用线段树维护的暴力,但看了看数据,会爆;于是就用树状数组
树状数组的初步了解
详解树状数组
以下是树状数组的代码


code

#include<stdio.h>
#include<iostream>
using namespace std;
int n,x,y,s,a[32005],b[32005];
int cx(int x)
{s=0;for(;x;x-=x&(-x))s+=a[x];return s;
}
void add(int x,int y)
{for(;x<=32001;x+=x&(-x))a[x]+=y;
}
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d%d",&x,&y);b[cx(x+1)]++;add(x+1,1);}for(int i=1;i<=n;i++)printf("%d\n",b[i-1]);return 0;
}

[树状数组]数星星 Stars相关推荐

  1. (二维树状数组)E - Stars

    E - Stars 题意:B表示点亮改点,D表示熄灭,Q查询区间内亮的个数 Sample Input 5 B 581 145 B 581 145 Q 0 600 0 200 D 581 145 Q 0 ...

  2. 树状数组的进阶运用(Stars 数星星)

    英文原题 Problem Description Astronomers often examine star maps where stars are represented by points o ...

  3. 数星星 ← 树状数组

    [问题描述] 题目来源:1265. 数星星 - AcWing题库 天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标. 如果一个星星的左下方(包含正左和正下)有 k 颗星星,就说这颗星星是 k ...

  4. C++数星星(树状数组)

    天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标. 如果一个星星的左下方(包含正左和正下)有 k 颗星星,就说这颗星星是 k级的. 例如,上图中星星 是 3 级的(1,2,4 在它左下),星 ...

  5. poj 2352 Stars 线段树(先建后查/边建边查)/树状数组三种方法思路详解,带你深入了解线段树难度⭐⭐⭐★

    poj 2352 Stars 目录 poj 2352 Stars 1.树状数组 2.线段树,先建树后查找 3.线段树,边建树边查找 Description Astronomers often exam ...

  6. POJ 2481 Cows POJ 2352 Stars(树状数组妙用)

    题目链接:POJ 2481 Cows POJ 2352 Stars 发现这两个题目都跟求逆序数有着异曲同工之妙,通过向树状数组中插入点的位置,赋值为1,或者++,然后通过求和来判断比当前 点 &quo ...

  7. Stars(树状数组)

    题意: m个星星,一个星星的等级取决于有多少其他星星的横纵坐标不大于它,如果有x个,该星星等级为x 问各个等级的星星有多少个? (题目会按照y的升序给出星星坐标) 题解: 树状数组入门题(不要问我为什 ...

  8. 2018蓝桥模拟赛·天上的星星 暴力|二维树状数组

    在一个星光摧残的夜晚,蒜头君一颗一颗的数这天上的星星. 蒜头君给在天上巧妙的画了一个直角坐标系,让所有的星星都分布在第一象.天上有 nn 颗星星,他能知道每一颗星星的坐标和亮度. 现在,蒜头君问自己  ...

  9. [洛谷]P3353 在你窗外闪耀的星星 (#树状数组)

    题目描述 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀着你玫瑰色的 ...

最新文章

  1. 华为p30如何把计算机放进通知栏,华为p30短信来了在通知栏怎么不显示
  2. spring@PropertySource用法
  3. ORACLE常用的动态性能视图
  4. ES6基础(var let const 箭头函数)-学习笔记
  5. ue4 怎么修改骨骼动画_【UE4】动画重定向
  6. LeetCode栈专题-1(go/py3/c++)
  7. CentOS设置时区
  8. 《Unix网络编程卷1:套接字联网API》读书笔记
  9. 数据库中的完整性约束及实例
  10. 进制之间的转换(转)
  11. 基于浏览器的3D网页游戏JavaScript 3D游戏引擎介绍
  12. ​「5G消息」的最新消息
  13. IT服务管理(一)服务的演变与整体观
  14. nodeBB项目的目录结构简介(nodeBB系列三)
  15. 中鑫吉鼎|保本理财产品的优缺点分析对比
  16. python geany是什么_Geany
  17. 微信文章如何采集php,记录微信公众号历史文章采集(二、js代码完善和数据库建立)...
  18. 微信公众号(二)每日推送详细教程(AI回复助手)
  19. 【程序】Marvell 88W8801 WiFi模块连接路由器,并使用lwip2.0.3建立http服务器(20180807版)
  20. 歌曲合成:MardSiningSy结果

热门文章

  1. 判断是否三角形 是什么三角形 解一元二次方程 if选择结构(java)
  2. 双对数坐标(log-log)下“斜率”“幅值”等概念对应到线性坐标下的实际含义
  3. 在计算机中配置了网关作用是什么意思,网关有什么用(网关详解网关作用大全)...
  4. 计算机辅助审计技术实训心得体会,审计实训心得体会范文【优秀篇】
  5. 《从一到无穷大》阅读笔记2
  6. X64 activeX控件测试
  7. ChatGPT:语音翻译的全新解决方案
  8. 什么是WebRTC?
  9. 程序员你知道吗?微信这功能开始收费了~
  10. Python Web技术开发软件安装