• PTA可怕的素质(双向链表法)


    可怕的素质

    亚克星球上的人的素质跟我们塞亚人比起来,可以说是一个天上,一个地下了。他们去食堂吃饭的时候,很多人都不好好的排队,而是排在某个熟人的后面,或者直接就插到队伍的最前面。这让食堂的工作人员很是恼火。

    输入格式:

    第一行包含一个整数n(0<n<1000),表示有n个亚克星球上的人去食堂吃饭。

    接下来n行,每行1个整数x,表示第i( i从1~n )个人排在了x的后面,当x为0时,表示第i个人排在了最前面。

    输出格式:

    输出仅一行,包括n个数,以空格作为分隔符,最后一个数的后面没有空格。表示这n个人最后是排成了怎样的队伍。

    输入样例:

    3
    0
    0
    2

    输出样例:

    2 3 1

    #include<iostream>
    #include<stdio.h>
    using namespace std;
    struct student{
    	int before;
    	int val;
    	int next;
    }stu[1001];
    int main()
    {
    	int n;
    	int x,head;
    	cin>>n; 
    	for(register int i=1;i<=n;i++)
    	{
    		cin>>x;
    		if(x==0)
    		{
    			stu[i].next=head;
    			head=i;
    		}
    		stu[i].val=i;
    		stu[i].before=x;
    		stu[i].next=stu[x].next;
    		stu[stu[i].next].before=i;
    		stu[stu[i].before].next=i;
    	}
    	for(register int i=head;i;i=stu[i].next)
    	{
    		if(i!=head) cout<<" "<<stu[i].val;
    		else
    		cout<<stu[i].val;
    	}
    	return 0;
    }
    
  • 相关阅读:
    POST、GET请求中文参数乱码问题
    表的复制——sql语句
    mysql之limit m,n
    nullpointerxception——处理思路
    public-private-protected-默认缺省 的区别
    final关键字的作用
    使用注解来构造IOC容器
    成功的背后!(给所有IT人)
    jQuery对象复制
    键盘录入, if语句
  • 原文地址:https://www.cnblogs.com/BeautifulWater/p/14508822.html
Copyright © 2020-2023  润新知