Mảng 2 chiều cơ bản - Ôn chuyên
In ma trận theo mẫu
Nộp bàiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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àiPoint: 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