Mảng 2 chiều cơ bản - Ôn chuyên

In ma trận theo mẫu

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho ma trận vuông cỡ NxN gồm N hàng, mỗi hàng N cột. Hãy in ra ma trận theo các mẫu dưới đây.


Đầu vào

Dòng đầu tiên là số N. N dòng tiếp theo mỗi dòng có N số.


Giới hạn

1≤n≤500

Các phần tử trong ma trận là số dương không quá 10^9.


Đầu ra

In ra ma trận theo mẫu, xem test case để rõ hơn.


Ví dụ :

Input 01
5
510 745 649 186 313 
474 22 168 18 787 
905 958 391 202 625 
477 414 314 824 334 
874 372 159 833 70
Output 01
Pattern 1:
510 474 905 477 874 
745 22 958 414 372 
649 168 391 314 159 
186 18 202 824 833 
313 787 625 334 70 
Pattern 2:
70 833 159 372 874 
334 824 314 414 477 
625 202 391 958 905 
787 18 168 22 474 
313 186 649 745 510 
Pattern 3:
313 787 625 334 70 
186 18 202 824 833 
649 168 391 314 159 
745 22 958 414 372 
510 474 905 477 874 
Pattern 4:
313 186 649 745 510 
787 18 168 22 474 
625 202 391 958 905 
334 824 314 414 477 
70 833 159 372 874

In các phần tử nằm dưới đường chéo phụ của ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập vào một ma trận vuông A gồm các số thực có kích thước n * n, sau đó in ra các phần tử nằm phía dưới đường chéo phụ (nằm ở tam giác phía dưới đường chéo phụ).


Ràng buộc: ~0 < n \leq 10^3~, ~-10^6 \leq A[i] \leq 10^6~


Input 01:
3
1 2 3
4 5 6
7 8 9
Output 01:
6 8 9
Input 02:
4
1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output 02:
8 3 4 6 7 8

In các phần tử nằm trên đường chéo phụ của ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập vào một ma trận vuông A gồm các số thực có kích thước n * n, sau đó in ra các phần tử nằm phía trên đường chéo phụ (nằm ở tam giác phía trên đường chéo phụ).


Ràng buộc: ~0 < n \leq 10^3~, ~-10^6 \leq A[i] \leq 10^6~


Input 01:
3
1 2 3
4 5 6
7 8 9
Output 01:
3 5 7
Input 02:
4
1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output 02:
4 7 2 5

In các phần tử nằm dưới đường chéo chính của ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập vào một ma trận vuông A gồm các số thực có kích thước n * n, sau đó in ra các phần tử nằm phía dưới đường chéo chính (nằm ở tam giác phía dưới đường chéo chính).


Ràng buộc: ~0 < n \leq 10^3~, ~-10^6 \leq A[i] \leq 10^6~


Input 01:
3
1 2 3
4 5 6
7 8 9
Output 01:
4 7 8
Input 02:
4
1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output 02:
5 1 2 5 6 7

In các phần tử nằm trên đường chéo chính của ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập vào một ma trận vuông A gồm các số thực có kích thước n * n, sau đó in ra các phần tử nằm phía trên đường chéo chính (nằm ở tam giác phía trên đường chéo chính).


Ràng buộc: ~0 < n \leq 10^3~, ~-10^6 \leq A[i] \leq 10^6~


Input 01:
3
1 2 3
4 5 6
7 8 9
Output 01:
1 5 9
Input 02:
4
1 2 3 4
5 6 7 8
1 2 3 4
5 6 7 8
Output 02:
1 6 3 8

Tổng các phần tử là số nguyên tố thuộc tam giác dưới

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Tìm tổng các phần tử là số nguyên tố thuộc tam giác dưới (nếu không có phần tử nào in ra 0)

INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
29

Xoay ma trận 180 độ

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Thực hiện xoay ma trận một góc 180 độ.


INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
16 15 14 13
12 11 10 9
8 7 6 5
4 3 2 1

Ma trận chuyển vị

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Thực hiện chuyển ma trận từ hàng thành cột.


INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
1 5 9 13
2 6 10 14
3 7 1 1 15
4 8 12 16

Cột có tổng lớn nhất

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Tìm cột có tổng các phần tử lớn nhất và in ra thứ tự cột và các giá trị của cột đó (nếu có nhiều hơn một cột thì in ra vị trí cột xếp trước).


INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
4
4 8 12 16

Cột có tổng nhỏ nhất

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Tìm cột có tổng các phần tử nhỏ nhất và in ra thứ tự cột và các giá trị của cột đó (nếu có nhiều hơn một cột thì in ra vị trí cột xếp trước).


INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
1
1 5 9 13

Xoay ma trận 90 độ ngược chiều kim đồng hồ

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Nhập ma trận A là ma trận vuông cấp n. Thực hiện xoay ma trận một góc 90 độ ngược chiều kim đồng hồ được ma trận B.


INPUT:
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
OUTPUT:
4 8 12 16
3 7 11 15
2 6 10 14
1 5 9 13

Tính tổng từng hàng và từng cột của ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình nhập vào ma trận A vuông cấp n. Tính tổng từng hàng, từng cột và thực hiện in ra.


Định dạng đầu vào:

  • Hàng thứ nhất là cấp của ma trận

  • Các hàng tiếp theo là các phần tử của ma trận

Định dạng đầu ra:

  • Hàng thứ nhất là tổng từng hàng

  • Hàng thứ hai là tổng từng cột


INPUT:
3
1 2 3
4 5 6
7 8 9
OUTPUT:
6 15 24
12 15 18

Hiệu 2 ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình cho phép nhập vào hai ma trận A và B có cùng số hàng và số cột là n và m. Tìm ma trận hiệu của ma trận A và ma trận B, in ra màn hình.

Định dạng đầu vào:

  • Hàng thứ nhất là số hàng và số cột của hai ma trận

  • Các hàng tiếp theo là các phần tử của ma trận A và ma trận

Định dạng đầu ra: Ma trận hiệu kết quả


INPUT:
3 3
1 2 3
4 5 6
7 8 9
3 4 5
6 7 8
1 2 3
OUTPUT:
-2 -2 -2
-2 -2 -2
6 6 6

Tổng các phần tử tam giác trên và dưới

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình nhập vào ma trận A vuông cấp n. Tính tổng các phần tử thuộc tam giác trên và tổng các phần tử thuộc tam giác dưới. Lưu ý không bao gồm đường chéo chính.


Định dạng đầu vào:

  • Hàng thứ nhất là cấp của ma trận

  • Các hàng tiếp theo là các phần tử của ma trận

Định dạng đầu ra: Kết quả tính toán

INPUT:
3
1 2 3
4 5 6
7 8 9
OUTPUT:
11 19

Chuyển đổi cột

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình cho phép nhập vào ma trận nguyên dương cấp M*N. Chuyển đổi hai cột a và b trong ma trận và in ra kết quả.

Định dạng đầu vào:

  • Hàng thứ nhất là cấp m,n của ma trận
  • m hàng tiếp theo là các phần tử của ma trận
  • Hàng cuối cùng là vị trí cột cần chuyển đổi

Định dạng đầu ra: Ma trận kết quả


INPUT:
3 3
1 2 3
4 5 6
7 8 9
1 3
OUTPUT:
3 2 1
6 5 4
9 8 7

Chuyển đổi hàng

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình cho phép nhập vào ma trận nguyên dương cấp M*N. Chuyển đổi hai hàng a và b trong ma trận và in ra kết quả.

Định dạng đầu vào:

  • Hàng thứ nhất là cấp m,n của ma trận
  • m hàng tiếp theo là các phần tử của ma trận
  • Hàng cuối cùng là vị trí hàng cần chuyển đổi

Định dạng đầu ra: Ma trận kết quả

INPUT:
3 3
1 2 3
4 5 6
7 8 9
1 3
OUTPUT:
7 8 9
4 5 6
1 2 3

Tổng 2 ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Viết chương trình cho phép nhập vào hai ma trận A và B có cùng số hàng và số cột là n và m. Tìm ma trận tổng của ma trận A và ma trận B, in ra màn hình.

Định dạng đầu vào:

  • Hàng thứ nhất là số hàng và số cột của hai ma trận
  • Các hàng tiếp theo là các phần tử của ma trận A và ma trận B

Định dạng đầu ra: Ma trận tổng kết quả

INPUT:
3 3
1 2 3
4 5 6
7 8 9
3 4 5
6 7 8
1 2 3
OUTPUT:
4 6 8
10 12 14
8 10 12

Tổng lớn nhất của hàng và cột

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho một bảng 4 kích thước n hàng, m cột gồm các số nguyên dương. Hãy đưa ra tổng lớn nhất của một hàng và một cột.


Input:

• Dòng đầu tiên chứa hai số n, m.

• n dòng tiếp theo, mỗi dòng chứa m số mô tả bảng A.

Các số được nhập vào là các số nguyên dương không vượt quá 1000.

Output:

• Dòng thứ nhất in ra tổng lớn nhất của một hàng bảng A.

• Dòng thứ hai in ra tổng lớn nhất của một cột bảng A.


Input:
2 3
2 4 5
9 9 2
Output:
20
13

Tổng các số thuộc đường chéo chính và trên đường chéo chính

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho một bảng A kích thước n x n gồm các số nguyên dương. Hãy đưa ra:

• Tổng các số thuộc đường chéo chính.

• Tổng các số nằm ở phía trên đường chéo chính.


Input:

  • Dòng đầu tiên chứa số n.

  • n dòng tiếp theo, mỗi dòng chứa n số mô tả bảng A.

  • Các số được nhập vào là các số nguyên dương không vượt quá 1000.

Output:

  • Dòng thứ nhất in ra tổng các số thuộc đường chéo chính của bảng A.

  • Dòng thứ hai in ra tổng các số phía trên đường chéo chính của bảng A.


Input:
3
2 1 3
1 9 5
1 1 1
Output:
12
9

Tổng phần tử trong ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho ma trận kích thước n x m. Hãy tính tổng tất cả phần tử.


Input:

Dòng 1: n, m

n dòng tiếp theo: mỗi dòng m số nguyên


Output:

Một số nguyên: tổng các phần tử


Ví dụ:

Input 1:
2 3
1 2 3
4 5 6
Output 1:
21
Input 2:
3 2
-1 0
2 3
4 -2
Output 2:
6

Phần tử lớn nhất trong ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Tìm giá trị lớn nhất trong ma trận.


Input:

Dòng 1: n, m

n dòng tiếp theo: m số nguyên


Output:

Một số nguyên: giá trị lớn nhất


Ví dụ:

Input 1:
2 2
1 5
-3 4
Output 1:
5
Input 2:
3 3
0 0 0
-1 -2 -3
7 1 2
Output 2:
7

Đếm số dương trong ma trận

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Đếm có bao nhiêu số dương trong ma trận.


Input:

Dòng 1: n, m

n dòng tiếp theo: m số nguyên

Output:

Một số nguyên: số lượng phần tử > 0


Ví dụ:

Input 1:
2 3
1 -1 0
2 3 -2
Output 1:
3
Input 2:
2 2
-5 -4
-3 -2
Output 2:
0

Ma trận đối xứng qua đường chéo chính

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho ma trận vuông n x n. Hãy kiểm tra xem nó có đối xứng qua đường chéo chính hay không.


Input:

Dòng 1: n

n dòng tiếp theo: n số nguyên

Output:

YES nếu đối xứng, NO nếu không


Ví dụ:

Input 1:
3
1 2 3
2 4 5
3 5 6
Output 1:
YES
Input 2:
2
1 0
2 1
Output 2:
NO

Ma trận đối xứng qua đường chéo phụ

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho ma trận vuông kích thước n x n.

Hãy kiểm tra xem ma trận có đối xứng qua đường chéo phụ (từ ô trên cùng bên phải đến ô dưới cùng bên trái) hay không.


Input:

Dòng 1: số nguyên n (1 ≤ n ≤ 100).

n dòng tiếp theo: mỗi dòng gồm n số nguyên.

Output:

In YES nếu ma trận đối xứng qua đường chéo phụ.

In NO nếu không.


Ví dụ:

Input 01:
3
1 2 3
4 5 2
7 4 1
Output 01:
YES
Input 02:
3
1 0 2
4 5 6
7 8 9
Output 02:
NO

Nhân 2 ma trận (mảng 2 chiều cơ bản)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 1

Cho ma trận A cỡ NxM, ma trận B cỡ MxP. Hãy tính ma trận tích của A và B.


Định dạng đầu vào: Dòng đầu tiên là 3 số N, M, P: N dòng tiếp theo, mỗi dòng M của ma trận A; M dòng tiếp theo, mỗi dòng P số của ma trận B


Ràng buộc: 1 ≤ N, M, P ≤ 50; Các phần tử trong ma trận là số dương không quá 100000;


Định dạng đầu ra: In ra ma trận tích của A và B


Input:
3 4 5
1 2 3 4
5 6 7 8
9 10 11 12
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
Output:
110 120 130 140 150 
246 272 298 324 350 
382 424 466 508 550