A84810.午枫的排队
普及-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
已知小午和小枫的队伍中有 n 个人,给这 n 个人编号 1∼n ,对每个人进行一次询问,编号 i 的人会回答一个数字 ai 。
- 如果 ai=−1 ,表示第 i 个人排在队头;
- 如果 ai=−1 ,表示第 i 个人站在第 ai 个人的后面。
请输出队列中从前到后每个人的编号。
输入格式
第一行输入一个正整数 n (1≤n≤3×105) ,表示队伍中的人数。
第二行输入 n 个整数 ai (ai=−1 或 1≤ai≤n,ai=i) ,表示第 i 个人的回答,保证数据中 ai=−1 恰好有 1 个。
输出格式
输出一行 n 个整数,表示队列中从前到后的人的编号。
输入输出样例
输入#1
6 4 1 -1 5 3 2
输出#1
3 5 4 1 2 6
说明/提示
从前到后,依次为第 3、第 5、第 4、第 1、第 2、第 6 个人时,与给定信息一致。实际上:
- 第 1 个人站在第 4 个人的正后方。
- 第 2 个人站在第 1 个人的正后方。
- 第 3 个人站在队列最前面。
- 第 4 个人站在第 5 个人的正后方。
- 第 5 个人站在第 3 个人的正后方。
- 第 6 个人站在第 2 个人的正后方。
可以确认与给定信息一致。因此,请按顺序输出 3,5,4,1,2,6,用空格分隔。