#P3584. [POI2015] LAS

    ID: 2640 Type: RemoteJudge 1000ms 125MiB Tried: 0 Accepted: 0 Difficulty: 5 Uploaded By: Tags>动态规划,dp2015POISpecial Judge

[POI2015] LAS

题目描述

圆桌上摆放着 nn 份食物,围成一圈,第 ii 份食物所含热量为 cic_i。相邻两份食物之间坐着一个人,共有 nn 个人。每个人有两种选择,吃自己左边或者右边的食物。如果两个人选择了同一份食物,这两个人会平分这份食物,每人获得一半的热量。 假如某个人改变自己的选择后(其他 n1n-1 个人的选择不变),可以使自己获得比原先更多的热量,那么这个人会不满意。请你给每个人指定应该吃哪一份食物,使得所有人都能够满意。

输入格式

第一行一个整数 nn,表示食物的数量(即人数,食物和人都从 1n1\sim n 编号)。
第二行包含 nn 个整数 c1,c2,,cnc_1,c_2,\dots,c_n。这里约定,第 ii1i<n1\le i<n)个人左边是第 ii 份食物,右边是第 i+1i+1 份食物;而第 nn 个人左边是第 nn 份食物,右边是第 11 份食物。

输出格式

如果不存在这样的方案,仅输出一行 NIE
如果存在这样的方案,输出一行共 nn 个整数,第 ii 个整数表示第 ii 个人选择的食物的编号。如果有多组这样的方案,输出任意一个即可。

5
5 3 7 2 9

2 3 3 5 1

提示

【数据范围】

对于所有数据,2n1062\leqslant n\leqslant 10^61ci1091\leqslant c_i\leqslant 10^9


原题名称:Łasuchy

感谢 @KSkun 为本题提供 SPJ。