题目地址:
https://www.acwing.com/problem/content/725/
输入两个整数
N
N
N和
M
M
M,构造一个
N
N
N行
M
M
M列的数字矩阵,矩阵中的数字从第一行到最后一行,按从左到右的顺序依次为
1
,
2
,
3
,
…
,
N
×
M
1,2,3,…,N×M
1,2,3,…,N×M。矩阵构造完成后,将每行的最后一个数字变为PUM
。输出最终矩阵。
输入格式:
共一行,包含两个整数
N
N
N和
M
M
M。
输出格式:
输出最终矩阵,具体形式参照输出样例。
数据范围:
1
≤
N
,
M
≤
20
1≤N,M≤20
1≤N,M≤20
代码如下:
#include <iostream>
using namespace std;
int main() {
int n, m;
cin >> n >> m;
for (int i = 1; i <= n * m; i++) {
if (i % m == 0) puts("PUM");
else printf("%d ", i);
}
return 0;
}
时间复杂度 O ( m n ) O(mn) O(mn),空间 O ( 1 ) O(1) O(1)。