Cho mảng A. Xét tất cả subarray không rỗng. Với mỗi subarray tính tổng S, rồi cộng 2^S. Tìm tổng P mod 1e9+7.
Công thức
P = ∏_{a∈A} (1 + 2^a) - 1 (mod 1e9+7).
Ví dụ
def solve(A):
MOD = 10**9 + 7
ans = 1
for el in A:
ans = ans * (1 + pow(2, el, MOD)) % MOD
return (MOD + ans - 1) % MOD
print(solve([2, 2, 3])) # Output: 224
Giải thích
A=[2,2,3]: subarray sums: 2,2,3,4,5,5,7 → 2^2+2^2+2^3+2^4+2^5+2^5+2^7 = 4+4+8+16+32+32+128 = 224.