【题目描述】
你知道吗?在外国,如果你不修剪你的花圃,是要被贴罚单的。Xman忙于战斗,被贴了好多罚单。这一次好不容易休息了,他决定修剪一下。修剪成什么样子呢?当然是X形。
Xman的花圃是一个n*n的正方形,其中n为大于等于3的正奇数。在每个位置上都有几个植物,对应的正整数是该植物的高度h。Xman的修剪策略是,首先把不在两条对角线上的植物通通铲光,然后在对角线上找到最矮的一株植物,把剩余的其他植物都裁剪成与它等高,这样一个漂亮整齐的X型就出来了。
Xman的东西当然值钱了。每1单位高度的植物,就可以卖2美元,把减掉的植物都卖掉,就可以弥补罚单的损失了。你帮Xman计算一下一共可以卖多少钱。
【输入】
有多行。第1行是一个整数n(n<1000),表示花圃的边长。接下来n行是一个n*n的正整数二维数组,每个正整数值表示对应植物的高度h(h<1000)。
【输出】
仅一行。一个整数,表示卖出的美元总数。
【样例输入】
3
1 1 3
3 2 2
1 2 2
【样例输出】
24
#include<stdio.h> int main() { int n,i,j,k,all=0,min=0; scanf("%d",&n); int m[n][n],x[2*n-1]; for(i=0;i<n;i++) for(j=0;j<n;j++) { scanf("%d",&m[i][j]); if(i==j||i+j==n-1) {x[k]=m[i][j]; k++;} else all+=m[i][j]; } for(k=0;k<2*n-1;k++) if(x[min]>x[k]) min=k; for(k=0;k<2*n-1;k++) all+=x[k]-x[min]; printf("%d",2*all); return 0; }
标签:Xman,修剪,15,min,int,植物,第六章,罚单 From: https://www.cnblogs.com/xrj1229/p/16879098.html