A1133
Description:
给出一个序列,要求不破坏原顺序的情况下,先输出负数、再输出[0,k]范围数、再输出其余数;
思路:
- 第一次:模拟链表操作,但是最后一组超时了,可能有无法终止循环的bug,也可能是算法本身有问题:
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<map>
#include<vector>
#include<queue>
using namespace std;
const int maxn = 1e5+5;
struct Node{
int v, next, pre;
}node[maxn];
bool vis[maxn];
int n ,fir, k;
vector<int>ans;
int main()
{
#ifdef ONLINE_JUDGE
#else
freopen("1.txt", "r", stdin);
#endif // ONLINE_JUDGE
scanf("%d%d%d", &fir, &n, &k);
ans.resize(n);
memset(vis, 0, sizeof(vis));
int add, va, ne;
for(int i = 0; i < n; i++){
scanf("%d%d%d", &add, &va, &ne);
vis[add] = true;
node[add].v = va;
node[add].next = ne; //跟新后继指针
if(ne != -1) n