#346. 橱窗布置(flower)

橱窗布置(flower)

橱窗布置(flower)

题目描述

假设以最美观的方式布置花店的橱窗,有 FF 束花,每束花的品种都不一样,同时,至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,并从左到右,从 11VV 顺序编号,VV 是花瓶的数目。编号为 11 的花瓶在最左边,编号为 VV 的花瓶在最右边。

花束可以移动,并且每束花用 11FF 的整数惟一标识,标识花束的整数决定了花束在花瓶中列的顺序,即如果 i<ji < j,则花束 ii 必须放在花束 jj 左边的花瓶中。如果花瓶的数目大于花束的数目,则多余的花瓶必须空,即每个花瓶中只能放一束花。

每一个花瓶的形状和颜色也不相同,因此,当各个花瓶中放入不同的花束时会产生不同的美学效果,并以美学值(一个整数)来表示,空置花瓶的美学值为 00

为取得最佳美学效果,必须在保持花束顺序的前提下,使花的摆放取得最大的美学值。如果具有最大美学值的摆放方式不止一种,则输出任何一种方案即可。

输入

第一行有两个整数 FFVV,表示花束数目和花瓶数目(1FV1001 \le F \le V \le 100)。

接下来 FF 行,每行 VV 个整数,第 ii 行第 jj 列的整数 AijA_{ij} 表示花束 ii 摆放在花瓶 jj 中的美学值(50Aij50-50 \le A_{ij} \le 50)。

输出

第一行输出最大的美学值。

第二行输出每束花摆放在各个花瓶中的花瓶编号(FF 个整数,按花束编号 11FF 的顺序输出,中间用一个空格分隔)。

样例输入

3 5
7 23 -5 -24 16
5 21 -4 10 23
-21 5 -4 -20 20

样例输出

53
2 4 5