# Leetcode 970. Powerful Integers

[medium]

Given three integers `x`

, `y`

, and `bound`

, return *a list of all the **powerful integers** that have a value less than or equal to* `bound`

.

An integer is **powerful** if it can be represented as `xi + yj`

for some integers `i >= 0`

and `j >= 0`

.

You may return the answer in **any order**. In your answer, each value should occur **at most once**.

**Example 1:**

**Input:** x = 2, y = 3, bound = 10

**Output:** [2,3,4,5,7,9,10]

**Explanation:**

2 = 20 + 30

3 = 21 + 30

4 = 20 + 31

5 = 21 + 31

7 = 22 + 31

9 = 23 + 30

10 = 20 + 32

**Example 2:**

**Input:** x = 3, y = 5, bound = 15

**Output:** [2,4,6,8,10,14]

**Constraints:**

`1 <= x, y <= 100`

`0 <= bound <= 106`

[Test Points]

- No duplicate — need to use set as datastructure.
- have to change set into List<Integer>
- how to handle corner case — when x or y equals to 1

[Notes]

- reate situable data structure, in this case, hashset and arraylist
- for loops using i *= x, get the power of x
- corner case need to be careful

**[Ans-@****wangzi6147****]**

**[Second- @****416486188****]**