func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long MAX = 1e15;   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     ;     int n, k;     cin >> n >> k;     vector<int> first(n);     for (int i = 0; i < n; i++) cin >> first[i];     vector<long long> pr(n + 1);     for (int i = 0; i < n; i++) pr[i + 1] = pr[i] + first[i];     map<long long, int> how;     for (int i = 0; i < n; i++) {       how[pr[i + 1]]++;     }     long long ans = 0;     for (int i = 0; i < n; i++) {       if (k == 1) {         ans += how[k + pr[i]];       } else {         if (k == -1) {           ans += how[k + pr[i]];           ans += how[-k + pr[i]];         } else {           for (long long p = 1; p <= MAX; p *= k) {             ans += how[p + pr[i]];           }         }       }       how[pr[i + 1]]--;     }     cout << ans;     return 0;   }   