概要
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。
现在算起来,他一共吹熄了236根蜡烛。
请问,他从多少岁开始过生日party的?
请填写他开始过生日party的年龄数。
整体架构流程
这里提倡二分法可以帮我们更快的排除一些结果很大的选项
技术细节
#include <stdio.h>
int main() {
int x = 0;
int y = 0;
int sum = 0;
//假设某君从出生就过生日吹蜡烛
for ( x = 1; x <50; x++) {//开始假设的年龄不断增大,但如果从50岁开始点蜡烛话,50+51+52+53+54>236
for (sum = 0,y=x;sum<=236;y++) {//每次计算sum都为0;
sum+=y;
if (sum == 236) {
printf("某君从%d岁开始过生日party的,现在%d岁",x,y);
}
}