Bootstrap

算法 — 生日蜡烛

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

某君从某年开始每年都举办一次生日 party,并且每次都要吹熄与年龄相同根数的蜡烛。

现在算起来,他一共吹熄了 236 根蜡烛。

请问,他从多少岁开始过生日 party 的?

请输出他开始过生日 party 的年龄数。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

解题思路:

        这是一道较为简单的填空题,可以通过暴力算法进行求解,不过这里的遍历次数较为少,故不用担心算法的时间复杂度会不会导致算法效率过低的问题。在该问题中可以直接对从 0 到100 的数字进行尝试,直到找出从某个数开始到某个数刚刚好加起来的和能等于 236 即可。该算法的 Java 代码实现如下:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int i, j, sum;
        for (i = 0; i <= 100; i++) {
          sum = 0;
          for (j = i; j <= 100; j++) {
            sum += j;
            if (sum == 236) {
              System.out.println(i);
              return;
            }
          }
        }
    }
}

;