Formatted question description: https://leetcode.ca/all/2177.html

# 2177. Find Three Consecutive Integers That Sum to a Given Number (Medium)

Given an integer `num`

, return *three consecutive integers (as a sorted array)** that sum to *

`num`

. If `num`

cannot be expressed as the sum of three consecutive integers, return*an*

**empty**array.

**Example 1:**

Input:num = 33Output:[10,11,12]Explanation:33 can be expressed as 10 + 11 + 12 = 33. 10, 11, 12 are 3 consecutive integers, so we return [10, 11, 12].

**Example 2:**

Input:num = 4Output:[]Explanation:There is no way to express 4 as the sum of 3 consecutive integers.

**Constraints:**

`0 <= num <= 10`

^{15}

**Similar Questions**:

## Solution 1. Math

Let `x`

be the first number of the 3 consecutive numbers. Then `num = x + x + 1 + x + 2 = 3 * x + 3`

. Since `x`

is an integer, `num`

must be multiple of `3`

, and `x = num / 3 - 1`

.

```
// OJ: https://leetcode.com/problems/find-three-consecutive-integers-that-sum-to-a-given-number/
// Time: O(1)
// Space: O(1)
class Solution {
public:
vector<long long> sumOfThree(long long num) {
if (num % 3) return {};
long x = num / 3 - 1;
return {x, x + 1, x + 2};
}
};
```

Or one-liner

```
// OJ: https://leetcode.com/problems/find-three-consecutive-integers-that-sum-to-a-given-number/
// Time: O(1)
// Space: O(1)
class Solution {
public:
vector<long long> sumOfThree(long long num) {
return num % 3 ? vector<long long>{} : vector<long long>{num / 3 - 1, num / 3, num / 3 + 1};
}
};
```

## Discuss

https://leetcode.com/problems/find-three-consecutive-integers-that-sum-to-a-given-number/discuss/1783380/C%2B%2B-Math-one-liner