社区讨论

4AC 6WA求调

B3631单向链表参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@m2j1saz6
此快照首次捕获于
2024/10/21 21:23
去年
此快照最后确认于
2025/11/04 16:35
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
struct node
{
	int data, next = -1;
} a[100005] = {1};
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int n, op, x, len = 1, p1, p2, t;
	cin >> n;
	while (n--)
	{
		cin >> op >> x;
		if (op == 1)
		{
			p2 = len;
			for (int i = 0; i < len; i++)
				if (a[i].data == x)
				{
					p1 = i;
					break;
				}
			for (int i = 0; i < len; i++)
				if (a[i].data == 0)
				{
					p2 = i;
					break;
				}
			if (p2 == len)
				len++;
			cin >> a[p2].data;
			if (a[p1].next == -1)
				a[p1].next = p2;
			else
			{
				t = a[p1].next;
				a[p1].next = p2;
				a[p2].next = t;
			}
		}
		else if (op == 2)
		{
			for (int i = 0; i < len; i++)
				if (a[i].data == x)
				{
					if (a[i].next == -1)
						cout << "0\n";
					else
						cout << a[a[i].next].data << "\n";
					break;
				}
		}
		else if (op == 3)
			for (int i = 0; i < len; i++)
				if (a[i].data == x)
				{
					if (a[i].next != -1)
					{
						a[a[i].next].data = 0;
						a[i].next = a[a[i].next].next;
					}
					break;
				}
	}
	return 0;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...