Given two integers **N** and **K**, the task is to find an **N** x **N** square matrix such that sum of every row and column should be equal to **K**. **Note** that there can be multiple such matrices possible. Print any one of them.

**Examples:**

Input:N = 3, K = 15

Output:

2 7 6

9 5 1

4 3 8

Input:N = 3, K = 7

Output:

7 0 0

0 7 0

0 0 7

**Approach:** An **N x N** matrix such that each left diagonal element is equal to **K** and rest elements are **0** will satisfy the given condition. In this way, the sum of the elements of the each row and column will be equal to **K**.

Below is the implementation of the above approach:

## C++

`// C++ implementation of the approach ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `// Function to print the ` `// required matrix ` `void` `printMatrix(` `int` `n, ` `int` `k) ` `{ ` ` ` `for` `(` `int` `i = 0; i < n; i++) { ` ` ` `for` `(` `int` `j = 0; j < n; j++) { ` ` ` ` ` `// Print k for the left ` ` ` `// diagonal elements ` ` ` `if` `(i == j) ` ` ` `cout << k << ` `" "` `; ` ` ` ` ` `// Print 0 for the rest ` ` ` `else` ` ` `cout << ` `"0 "` `; ` ` ` `} ` ` ` `cout << ` `"\n"` `; ` ` ` `} ` `} ` ` ` `// Driver code ` `int` `main() ` `{ ` ` ` `int` `n = 3, k = 7; ` ` ` ` ` `printMatrix(n, k); ` ` ` ` ` `return` `(0); ` `} ` |

*chevron_right*

*filter_none*

## Java

`// Java implementation of the approach ` `import` `java.util.*; ` ` ` `class` `GFG ` `{ ` ` ` `// Function to print the required matrix ` `static` `void` `printMatrix(` `int` `n, ` `int` `k) ` `{ ` ` ` `for` `(` `int` `i = ` `0` `; i < n; i++) ` ` ` `{ ` ` ` `for` `(` `int` `j = ` `0` `; j < n; j++) ` ` ` `{ ` ` ` ` ` `// Print k for the left ` ` ` `// diagonal elements ` ` ` `if` `(i == j) ` ` ` `System.out.print(k + ` `" "` `); ` ` ` ` ` `// Print 0 for the rest ` ` ` `else` ` ` `System.out.print(` `"0 "` `); ` ` ` `} ` ` ` `System.out.print(` `"\n"` `); ` ` ` `} ` `} ` ` ` `// Driver code ` `public` `static` `void` `main(String[] args) ` `{ ` ` ` `int` `n = ` `3` `, k = ` `7` `; ` ` ` ` ` `printMatrix(n, k); ` `} ` `} ` ` ` `// This code is contributed by Princi Singh ` |

*chevron_right*

*filter_none*

## Python3

`# Python3 implementation of the approach ` ` ` `# Function to print the ` `# required matrix ` `def` `printMatrix(n, k) : ` ` ` ` ` `for` `i ` `in` `range` `(n) : ` ` ` `for` `j ` `in` `range` `(n) : ` ` ` ` ` `# Print k for the left ` ` ` `# diagonal elements ` ` ` `if` `(i ` `=` `=` `j) : ` ` ` `print` `(k, end ` `=` `" "` `); ` ` ` ` ` `# Print 0 for the rest ` ` ` `else` `: ` ` ` `print` `(` `"0"` `, end ` `=` `" "` `); ` ` ` ` ` `print` `(); ` ` ` `# Driver code ` `if` `__name__ ` `=` `=` `"__main__"` `: ` ` ` ` ` `n ` `=` `3` `; k ` `=` `7` `; ` ` ` ` ` `printMatrix(n, k); ` ` ` `# This code is contributed by AnkitRai01 ` |

*chevron_right*

*filter_none*

## C#

`// C# implementation of the approach ` `using` `System; ` ` ` `class` `GFG ` `{ ` ` ` `// Function to print the required matrix ` `static` `void` `printMatrix(` `int` `n, ` `int` `k) ` `{ ` ` ` `for` `(` `int` `i = 0; i < n; i++) ` ` ` `{ ` ` ` `for` `(` `int` `j = 0; j < n; j++) ` ` ` `{ ` ` ` ` ` `// Print k for the left ` ` ` `// diagonal elements ` ` ` `if` `(i == j) ` ` ` `Console.Write(k + ` `" "` `); ` ` ` ` ` `// Print 0 for the rest ` ` ` `else` ` ` `Console.Write(` `"0 "` `); ` ` ` `} ` ` ` `Console.Write(` `"\n"` `); ` ` ` `} ` `} ` ` ` `// Driver code ` `public` `static` `void` `Main(String[] args) ` `{ ` ` ` `int` `n = 3, k = 7; ` ` ` ` ` `printMatrix(n, k); ` `} ` `} ` ` ` `// This code is contributed by PrinciRaj1992 ` |

*chevron_right*

*filter_none*

**Output:**

7 0 0 0 7 0 0 0 7

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready.