题目链接
http://noi-test.zzstep.com/contest/0x10%E3%80%8C%E5%9F%BA%E6%9C%AC%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E3%80%8D%E4%BE%8B%E9%A2%98/1301%20%E9%82%BB%E5%80%BC%E6%9F%A5%E6%89%BE
分析
借助链表实现,通过原数组建立链表,满足元素有序。
依次考虑原数组中第 n n n 到第 2 2 2 个元素,找到其在链表中的位置,此时该节点的左右指针分别指向前驱和后继。
题目要求的两个条件都得到满足,可得出当前元素的答案, 从链表中删去该元素,之后同理。
链表第 0 0 0 个节点和第 n + 1 n + 1 n+1 个节点的值设为无穷,避免影响答案。
AC代码
#include <cstdio>
#include <algorithm>
using namespace std;
inline int read() {
int num =