有佬能解释为啥能过吗
查看原帖
有佬能解释为啥能过吗
1180121
666_qq6楼主2024/4/10 23:51

本来想试一下,没想到直接A了 qwq 时间复杂都应该o(n^2)的呀,是因为数据太弱了吗

vector<int> q;
int n, ins, a, b;
inline void read(int& x) {
	int a = 0, f = 1;
	char  ch = getchar();
	while (ch < '0' || ch>'9') { if (ch == '-') f = -1; ch = getchar(); }
	while (ch <= '9' && ch >= '0') { a = (a << 1) + (a << 3) + ch - '0'; ch = getchar(); }
	x = a * f;
	return;
}
int main() {
	read(n);
	q.push_back(1);
	for (int i = 1; i <= n; i++) {
		read(ins);
		if (ins == 1) {
			read(a), read(b);
			auto p = find(q.begin(), q.end(), a);
			if (p == q.end()) q.push_back(b);
			else q.insert(p + 1, b);
		}
		else if (ins == 2) {
			read(a);
			auto p = find(q.begin(), q.end(), a);
			if (p == q.end() - 1) printf("0\n");
			else printf("%d\n", *(p + 1));
		}
		else {
			read(a);
			auto p = find(q.begin(), q.end(), a);
			q.erase(p + 1);
		}
	}
	return 0;
}
2024/4/10 23:51
加载中...