还原——非常无语……

 

 

原题(提交答案式题):

 

还原

 

鉴于上面几道题目太‘水’,怕各位大牛半小时切完后没事做,因此补上这道‘难’题让大家打发时间。

 

题目描述

     一个包含N个数的序列A,定义B:

                    Bi = max{Bj} + 1  {Aj < Ai, j < i}

        现在有一个序列N=500000,我将对应的B1BN告诉你,看你能不能猜出这个序列。

 

Your Task

本题为提交答案式题目,提供的输入文件 revert.in中按题目描述给出B1BN,你需要提供一个输出文件 revert.out ,在一行按顺序给出A1AN

 

评分标准

若你未提供输出文件或输出文件不合法(即按你提供的A序列求出的B值与输入不符),得0分,否则得30分。

        在此基础上,若你的输出与标准输出完全匹配,奖励20分。^_^

 

写了7个版本的程序,最后被solution痛苦到了!

 

1:用bfs 

2:从后面插入,线段树 

3:用key类似的方法

4:二叉树的插入

5:直接找prev,dfs按prev排列 

6:连边,dfs 

7:用队列和double二分。

……

(还有的我忘了)

 

 

看看solution:

 

 

 

不用编程,只用小小几个操作即可。

1. 左键单击revert.in

2. 按F2

3. 输入revert.out

4. 敲回车。

5. 50分到手。

 

吐血中……

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值