找规律,模拟矩阵
#include <iostream>
#include <vector>
using namespace std;
int main(){
int N = 0;
cin >> N;
vector<vector<int>> nums(N, vector<int>(N, 0));
int val = 1;
int k = N;
for (int i = 0; i < N; i++) {
int step = i + 2;
int temp = val;
for (int j = 0; j < k; j++) {
nums[i][j] = temp;
temp += step;
step++;
}
k--;
val += i + 1;
}
// 输出
for (vector<vector<int>>::iterator iter = nums.begin(); iter != nums.end(); iter++) {
auto temp = *iter;
for (vector<int>::iterator iterr = temp.begin(); iterr != temp.end(); iterr++) {
if (*iterr != 0) cout << *iterr << " ";
}
cout << endl;
}
}
京公网安备 11010502036488号