csharp 如何在多维数组中找到具有最高和的大小为2乘2的子矩阵的示例。从计算机程序基础
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp 如何在多维数组中找到具有最高和的大小为2乘2的子矩阵的示例。从计算机程序基础相关的知识,希望对你有一定的参考价值。
// Declare and initialize the matrix
int[,] matrix = {
{ 0, 2, 4, 0, 9, 5 },
{ 7, 1, 3, 3, 2, 1 },
{ 1, 3, 9, 8, 5, 6 },
{ 4, 6, 7, 9, 1, 0 }
};
// Find the maximal sum platform of size 2 x 2
long bestSum = long.MinValue;
int bestRow = 0;
int bestCol = 0;
for (int row = 0; row < matrix.GetLength(0) - 1; row++)
{
for (int col = 0; col < matrix.GetLength(1) - 1; col++)
{
long sum = matrix[row, col] + matrix[row, col + 1] +
matrix[row + 1, col] + matrix[row + 1, col + 1];
if (sum > bestSum)
{
bestSum = sum;
bestRow = row;
bestCol = col;
}
}
}
// Print the result
Console.WriteLine("The best platform is:");
Console.WriteLine(" {0} {1}",
matrix[bestRow, bestCol],
matrix[bestRow, bestCol + 1]);
Console.WriteLine(" {0} {1}",
matrix[bestRow + 1, bestCol],
matrix[bestRow + 1, bestCol + 1]);
Console.WriteLine("The maximal sum is: {0}", bestSum);
// The best platform is:
// 9 8
// 7 9
// The maximal sum is: 33
以上是关于csharp 如何在多维数组中找到具有最高和的大小为2乘2的子矩阵的示例。从计算机程序基础的主要内容,如果未能解决你的问题,请参考以下文章
如何找到具有最小k长度和最大和的子数组?
在 Swift 中通过计数从多维数组中找到最大的数组
csharp 如何声明,分配和初始化一维,多维和锯齿状数组的示例。
csharp 如何声明,分配和初始化一维,多维和锯齿状数组的示例。
csharp 如何使用随机数填充多维数组并使用方法打印它的示例。
csharp 如何使用随机数填充多维数组并使用方法打印它的示例。