top1编程
← 返回题目
题解

【入门】字符图形11-字母正三角

1 条题解

  • 0
    @ 2026-7-30 0:53:19

    解题思路

    第 i 行先打印 n-i-1 个空格,让图形居中;然后从 A 开始连续打印 2*i+1 个字母。

    参考代码

    // 读取题目给出的数据。
    #include <iostream>
    using namespace std;
    
    int main() {
        int n;
        cin >> n;
    
        for (int i = 0; i < n; i++) {
            // 输出这一行前面的空格
            for (int j = 0; j < n - i - 1; j++) {
                cout << " ";
            }
            // 从 A 开始连续输出字母
            for (int j = 0; j < 2 * i + 1; j++) {
                cout << char('A' + j);
            }
            cout << endl;
        }
        return 0;
    }
    

    复杂度分析

    图形有 n 行,输出字符数量与 n² 同数量级,时间复杂度为 O(n²),空间复杂度为 O(1)。

    • 1