#S5106. I-区域(SPJ)

I-区域(SPJ)

在 𝑁×𝑀 的矩阵中,每个格子有一个权值,要求寻找一个包含𝐾 个格子的凸连通块(连通块中间没有空缺,并且轮廓是凸的),使这个连通块中的格子的权值和最大。

注意​:凸连通块是指:连续的若干行,每行的左端点列号先递减、后递增,右端点列号先递增、后递减。(递增、递减都是非严格的)

求出这个最大的权值和,并给出连通块的具体方案,输出任意一种方案即可。

输入格式

第一行包含三个整数𝑁,𝑀 和𝐾。

接下来 𝑁 行每行𝑀 个非负整数,表示 𝑁×𝑀 的矩阵上每个格子的权值(均不超过1000)。

输出格式

第一行输出 Oil : X,其中𝑋 为最大权值和。

接下来𝐾 行每行两个整数 𝑥𝑖𝑥_𝑖𝑦𝑖𝑦_𝑖,用来描述所有格子的具体位置,每个格子位于第 𝑥𝑖𝑥_𝑖行,第 𝑦𝑖𝑦_𝑖 列。

数据范围

1𝑁,𝑀15,0𝐾𝑁×𝑀1≤𝑁,𝑀≤15,0≤𝐾≤𝑁×𝑀

输入样例:

2 3 4 
10 20 30 
40 2 3

输出样例:

Oil : 100 
1 1 
1 2 
1 3 
2 1