关于这种奇奇怪怪的新式平衡树
  • 板块灌水区
  • 楼主mediocre_
  • 当前回复7
  • 已保存回复8
  • 发布时间2024/9/7 19:35
  • 上次更新2024/9/7 21:53:10
查看原帖
关于这种奇奇怪怪的新式平衡树
565707
mediocre_楼主2024/9/7 19:35
#include <bits/stdc++.h>
using namespace std;
vector <int> a;
int T, opt, x;
int main() {
	scanf("%d", &T);
	while (T--) {
		scanf("%d%d", &opt, &x);
		switch (opt) {
			case 1:
				a.insert(lower_bound(a.begin(), a.end(), x), x);
				break;
			case 2:
				a.erase(lower_bound(a.begin(), a.end(), x));
				break;
			case 3:
				printf("%d\n", lower_bound(a.begin(), a.end(), x) - a.begin() + 1);
				break;
			case 4:
				printf("%d\n", a[x - 1]);
				break;
			case 5:
				printf("%d\n", a[lower_bound(a.begin(), a.end(), x) - a.begin() - 1]);
				break;
			case 6:
				printf("%d\n", a[upper_bound(a.begin(), a.end(), x) - a.begin()]);
				break;
		}
	}
	return 0;
}

所以这到底是什么鬼啊,还挺好用,是不是以后就可以不用学平衡树了(

2024/9/7 19:35
加载中...