Given an integer n, return the number of ways you can write n as the sum of consecutive positive integers.
Example 1:
Input: n = 5
Output: 2
Explanation: 5 = 2 + 3
Example 2:
Input: n = 9
Output: 3
Explanation: 9 = 4 + 5 = 2 + 3 + 4
Example 3:
Input: n = 15
Output: 4
Explanation: 15 = 8 + 7 = 4 + 5 + 6 = 1 + 2 + 3 + 4 + 5
Constraints:
- 1 <= n <= 109
对于任何一个数 x 进行拆解:
2 个连续数: x = n + (n + 1) = 2n + 1
3 个连续数: x = n + (n + 1) + (n + 2) = 3n + 3
4 个连续数: x = n + (n + 1) + (n + 2) + (n + 3) = 4n + 6
5 个连续数: x = n + (n + 1) + (n + 2) + (n + 3) + (n + 4)= 5n + 10
…
只要其中的 n 有整数解就可以, 当 n<1 的时候,就没必要再继续检测了
impl Solution

给定一个整数n,返回将其写为连续正整数之和的方式数。例如,当n=5时,有2种方式:5=2+3;当n=9时,有3种方式:9=4+5,9=2+3+4。对于每个数x,可以有2到x个连续数的组合,需要找到所有可能的n值,使得n有整数解。
最低0.47元/天 解锁文章
480

被折叠的 条评论
为什么被折叠?



