题目名称 | 3331. [USACO20 Jan Bronze]Photoshoot |
---|---|
输入输出 | usaco_Jan_photo.in/out |
难度等级 | ★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 | 数声风笛ovo 于2020-01-19加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:2, 提交:2, 通过率:100% | ||||
Eddy2008 | 100 | 0.000 s | 0.00 MiB | C++ |
数声风笛ovo | 100 | 0.035 s | 13.67 MiB | C++ |
关于 Photoshoot 的近10条评论(全部评论) |
---|
usaco_Jan_photo.in
输出文件:usaco_Jan_photo.out
简单对比Farmer John 在给他编号为 $1\ldots N$ 的 $N$ 头奶牛排队拍照($2\le N\le 10^3$)。FJ 一开始计划从左向右数第 $i$ 个位置排编号为 $a_i$ 的奶牛,他在一张纸上写下了排列 $a_1,a_2,\ldots,a_N$。不幸的是,这张纸刚刚被 Farmer Nhoj 偷走了!
幸好 FJ 仍然有机会恢复他之前写下的排列。在这张纸被偷走之前,Bessie 记录了序列 $b_1,b_2,\ldots,b_{N-1}$,对于每一个 $1\le i<N$ 满足 $b_i=a_i+a_{i+1}$。
基于 Bessie 的信息,帮助 FJ 恢复可以产生序列 $b$ 的“字典序最小”的排列 $a$。排列 $x$ 字典序小于排列 $y$,如果对于某个 $j$,对于所有 $i<j$ 均有 $x_i=y_i$,且有 $x_j<y_j$(换句话说,这两个排列到某个位置之前都相同,在这个位置上 $x$ 小于 $y$)。
保证存在至少一个满足条件的 $a$。
输入的第一行包含一个整数$ N $。
第二行包含$ N - 1 $个以空格分隔的整数$ b_1,b_2,…,b_{N - 1} $。
具有$ N $个以空格分隔的整数$ a_1,a_2,…,a_N $的单行。
5 4 6 7 6
3 1 5 2 4
序列$ a $产生序列$ b $是因为$ 3 + 1 = 4、1 + 5 = 6、5 + 2 = 7 $和$ 2 + 4 = 6 $
对于$ 40\% $的测试数据(测试点$ 1\sim4 $),满足$ N ≤ 8 $。
对于$ 100\% $的测试数据,均满足上文所给出的数据规模。
USACO 一月公开赛 Bronze 组