Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
114593 彭士宝 蛇形矩阵 C++ Runtime Error 0 MS 280 KB 1135 2025-03-22 17:31:11

Tests(0/10):


Code:

#include <iostream> #include <vector> #include <iomanip> // 用于设置输出格式 using namespace std; int main() { int n; cin >> n; // 输入矩阵的大小 vector<vector<int>> matrix(n, vector<int>(n)); // 创建 n×n 的矩阵 int num = 1; // 当前要填充的数字 int row = n - 1, col = 0; // 从左下角开始 // 填充矩阵 for (int diag = 0; diag < 2 * n - 1; ++diag) { if (diag % 2 == 0) { // 当前对角线索引为偶数,向上填充 for (int i = min(diag, n - 1); i >= 0 && diag - i < n; --i) { matrix[i][diag - i] = num++; } } else { // 当前对角线索引为奇数,向下填充 for (int i = max(0, diag - n + 1); i < n && diag - i < n; ++i) { matrix[i][diag - i] = num++; } } } // 输出矩阵 for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { cout << setw(3) << matrix[i][j]; // 每个数字占3个字符宽度 } cout << endl; } return 0; }


Run Info:

*** Error in `./Main': free(): invalid next size (fast): 0x0000000001308570 ***