Skip to content

Commit 1777070

Browse files
committed
Runtime: 1526 ms (Top 91.5%) | Memory: 54.78 MB (Top 12.2%)
1 parent f9d30c2 commit 1777070

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Runtime: 1526 ms (Top 91.5%) | Memory: 54.78 MB (Top 12.2%)
2+
3+
class Solution:
4+
def productQueries(self, n: int, queries: List[List[int]]) -> List[int]:
5+
MOD = (10**9)+7
6+
binary = bin(n)[2:]
7+
powers = []
8+
result = []
9+
for index, val in enumerate(binary[::-1]):
10+
if val == "1":
11+
powers.append(2**index)
12+
13+
for index in range(1, len(powers)):
14+
powers[index] = powers[index] * powers[index - 1]
15+
16+
for l,r in queries:
17+
if l == 0:
18+
result.append(powers[r]%MOD)
19+
else:
20+
result.append((powers[r]//powers[l-1])%MOD)
21+
22+
return result
23+

0 commit comments

Comments
 (0)