/ Vijos / 题库 /

动态集合维护

动态集合维护

时间限制:1秒  内存限制:256N


【问题描述】

  按顺序给出集合的每个元素,每次给定一个元素 \(x(0<x≤1000 000)\),你需要回答当前集合中 小于等于 \(x\) 的元素个数和 大于 \(x\) 的元素个数。

【输入格式】

  第一行一个整数 n,表示集合元素的个数。
  接下来的 \(n\) 行,每行一个整数 \(x(0<x≤1000 000)\),表示按此顺序向集合中添加元素。

【输出格式】

  包含 \(n\) 行,其中第 \(i\) 行包含两个整数,分别表示向集合中插入第 \(i\) 个元素前,当前集合中小于等于 \(x\) 和大于 \(x\) 的元素个数。

【输入输出样例】

 Input

9
1
3
5
2
7
0
4
9
6

 Output

0 0
1 0
2 0
1 2
4 0
0 5
4 2
7 0
6 2

【数据说明】

  对于 \(100\%\) 的数据:\(n≤300 000\)

【来源】

  Nr.he

信息

ID
3142
难度
(无)
分类
数据结构 | 线段树树状数组 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
4
上传者