小编Dar*_*vil的帖子

三角数问题....在4秒内显示

通过添加自然数来生成三角数的序列.所以第7个三角形数字是1 + 2 + 3 + 4 + 5 + 6 + 7 = 28.前十个术语是:

1,3,6,10,15,21,28,36,45,55 ......

让我们列出前七个三角形数字的因子:

 1: 1
 3: 1,3
 6: 1,2,3,6
10: 1,2,5,10
15: 1,3,5,15
21: 1,3,7,21
28: 1,2,4,7,14,28
Run Code Online (Sandbox Code Playgroud)

我们可以看到28是第一个有超过五个除数的三角形数.

给定整数n,显示具有至少n个除数的第一个三角形数.

样本输入:5

输出28

输入约束:1 <= n <= 320

我显然能够做到这个问题,但我使用了一个天真的算法:

  1. 获取ñ.

  2. 找到三角形数字并使用mod运算符检查它们的因子数量.

但挑战是在输入后4秒内显示输出.在190和以上的高输入上,它花了将近15-16秒.然后我尝试将三角形数字及其因子数量先放入二维数组中,然后从用户处获取输入并搜索数组.但不知怎的,我无法做到:我遇到了很多处理器故障.请尝试使用此方法并粘贴代码.或者如果有更好的方法,请告诉我.

c++

-3
推荐指数
1
解决办法
7256
查看次数

标签 统计

c++ ×1