Snippets Collections
// intialize frequency container
void countFreq(int a[], int n, unordered_map<int, int> &hm) {
    // Insert elements and their
    // frequencies in hash map.
    for (int i = 0; i < n; i++)
        hm[a[i]]++;
}//O(n)

// return frequency number
int freqQuery(int x, unordered_map<int, int> hm) {
    return hm[x];
}//O(1)


int main() {
    int a[] = {1, 3, 2, 4, 2, 1};
    unordered_map<int, int> hm;  //create frequency container
    countFreq(a, 6, hm);         // intialize frequency container

    cout << freqQuery(2, hm) << endl;  // 2
    cout << freqQuery(3, hm) << endl;  // 1
    cout << freqQuery(5, hm) << endl;  // 0
}
//prefix Sum 
void pSum(ll a[], ll n, ll pSum[]) {
    pSum[0] = 0;
    for (int i = 0; i < n; i++)
        pSum[i + 1] = pSum[i] + a[i];

}//Time Complexity: O(n)

int main() {
    int n;
    cin >> n;
    ll a[n], p[n + 1];

    for (int i = 0; i < n; ++i) {
        cin >> a[i];
    }
  
    pSum(a, n, p);
}
---------------------------------------------------------------------------------------------------
 //to sum part of array 
 //1- choose left index (L) and right (R); 
 //2- use prefix Sum array
 prefix[R]−prefix[L−1] //prefixSum(L-1 --> R) if array based 1
prefix[R]−prefix[L] //prefixSum(L --> R)  if orginal array based 0
---------------------------------------------------------------------------------------------------  
star

Wed Aug 17 2022 20:23:19 GMT+0000 (Coordinated Universal Time)

#c++ #rangequiries
star

Wed Aug 17 2022 20:15:27 GMT+0000 (Coordinated Universal Time)

#c++ #rangequiries

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension