#P1747. [IOI 1998] Polygon
[IOI 1998] Polygon
题目描述
多边形是一个玩家在一个有 个顶点的多边形上的游戏,如图所示,其中 。每个顶点用整数标记,每个边用符号 +
(加)或符号 *
(乘积)标记。

第一步,删除其中一条边。随后每一步:选择一条边连接的两个顶点 和 ,用边上的运算符计算 和 得到的结果来替换这两个顶点。
游戏结束时,只有一个顶点,没有多余的边。如图所示,玩家先移除编号为3的边。之后,玩家选择计算编号为 的边,然后计算编号为 的边,最后,计算编号为 的边。结果是 。




这里每条边的运算符旁边的数字为边的编号,不拿来计算。编写一个程序,给定一个多边形,计算最高可能的分数。
输入格式
输入描述一个有 个顶点的多边形,它包含两行。第一行是数字 ,为总边数,。
第二行描述这个多边形,一共有 个读入,每两个读入中第一个是字符,第二个是数字。
第一个字符为第一条边的计算符号( 代表相加, 代表相乘),第二个代表顶点上的数字。首尾相连。
对于任何一系列的操作,顶点数字都在[-32768,32767]的范围内。
输出格式
第一行,输出最高的分数。在第二行,它必须写出所有可能的被清除后的边仍能得到最高得分的列表,必须严格递增。
4
t -7 t 4 x 2 x 5
33
1 2