top1编程
← 返回题目
题解

【入门】斜角I

1 条题解

  • 0
    @ 2026-7-31 4:37:17

    解题思路

    这道题要求输出一个 N 行 N 列的方阵,每个位置的值等于行号 + 列号 + 1。

    比如 N=5:

    • 第 1 行:1 2 3 4 5(行号0:0+1, 0+2, 0+3, 0+4, 0+5)
    • 第 2 行:2 3 4 5 6(行号1:1+1, 1+2, ...)
    • 第 3 行:3 4 5 6 7
    • 以此类推

    规律很简单:第 i 行第 j 列的值就是 i + j + 1。

    参考代码

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main() {
        int n;
        cin >> n;
    
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                // 每个位置的值 = 行号 + 列号 + 1
                cout << setw(3) << (i + j + 1);
            }
            cout << endl;
        }
        return 0;
    }
    

    复杂度分析

    • 时间复杂度:O(N²)
    • 空间复杂度:O(1)
    • 1