top1编程
← 返回题目
题解

数字找规律

1 条题解

  • 0
    @ 2026-8-4 14:03:51

    解题思路

    规律是:分母从 1 到 99,每个分母 d 输出 1/d, 2/d, ..., d/d。用双层 for 循环:外层控制分母,内层控制分子。

    总数就是 1+2+3+...+99 = 4950,用一个计数器边输出边统计。

    参考代码

    #include <iostream>
    using namespace std;
    
    int main() {
        int cnt = 0;   // 统计输出了多少个分数
        for (int d = 1; d <= 99; d++) {
            for (int i = 1; i <= d; i++) {
                if (cnt > 0) cout << ",";   // 除第一个外前面加逗号
                cout << i << "/" << d;
                cnt++;
            }
        }
        cout << endl << cnt << endl;   // 第二行输出总数
        return 0;
    }
    

    复杂度分析

    双层循环,总共输出 1+2+...+99=4950 项,时间复杂度 O(n²),额外空间复杂度 O(1)。

    • 1