NOIP2015普及组金币

发布时间 2023-12-07 09:52:22作者: 陆留生信奥艺术

NOIP2015普及组金币

题目数据 (n <= 10000)

根据题目要求与我们原来学过的打印数字三角形图形很相似。

数字三角形如下,数字可以对应成天数:

1

2   3

4   5   6

7   8   9   10

每天加的金币就是行坐标即可:

1

2   2

3   3   3

4   4   4   4

代码如何:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin >> n;
    int s = 0, cnt = 0;//cnt记作天数
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= i; j++)
        {
            s += i;
            ++cnt;
            if (cnt == n)
            {
                cout << s << endl;
                return 0;
            }
        }
    }
    return 0;
}

题目虽然是双重循环,但算法复杂度依旧是:O(N)。