LeadSquared | OA | Maximum Sum Matrix
464

Return sum of largest row sum & largest column sum

Test Cases

[
		{
			input: {
				rows: 2,
				columns: 2,
				elements: [1, 2, 5, 6],
			},
			output: 19,
		},
		{
			input: {
				rows: 3,
				columns: 3,
				elements: [3, 6, 9, 1, 4, 7, 2, 8, 9],
			},
			output: 44,
		},
	]

Solution

function maximumSumMatrix(rows, columns, elements) {
	const matrix = []
	let index = 0
	for (let i = 0; i < rows; i++) {
		matrix[i] = []
		for (let j = 0; j < columns; j++) {
			matrix[i][j] = elements[index++]
		}
	}

	let maxRowSum = 0
	let maxColumnSum = 0

	for (let i = 0; i < rows; i++) {
		let rowSum = 0
		for (let j = 0; j < columns; j++) {
			const element = matrix[i][j]
			rowSum += element
		}
		maxRowSum = Math.max(rowSum, maxRowSum)
	}

	for (let i = 0; i < columns; i++) {
		let columnSum = 0
		for (let j = 0; j < rows; j++) {
			const element = matrix[j][i]
			columnSum += element
		}
		maxColumnSum = Math.max(columnSum, maxColumnSum)
	}

	return maxRowSum + maxColumnSum
}
Comments (0)