# HackerEarth Array and good pairs problem solution

In this HackerEarth Array and good pairs problem solution You are given an array A of length N. A pair (a,b) is considered good if the following criterion is fulfilled:

Consider the decimal representation of a and b. a has digits a1,a2,...,ak1 and b has digits b1,b2,...,bk1. (a,b) is good only if there is no index y (1 <= y <= k) such that ay and by are non-zero elements.

You are required to process Q queries where each having one of the following forms:
1. i x: Change the ith index to x in the array
2. l r: Consider all the pairs (i, j) such that l <= i <= j <= r such that (ai,aj) is a good pair and add ai pi aj to the answer.

## HackerEarth Array and good pairs problem solution.

`#include <bits/stdc++.h>using namespace std;typedef long long ll; const int maxn = 3e5 + 14;struct Node{    bool c[2];    int cnt, x;    Node(){        c[1] = 1;    }    Node operator +(Node &o){        Node r;        r.cnt = cnt + o.cnt;        for(int i = 0; i < 2; i++)            r.c[i] = c[ o.c[i] ];        return r;    }}  seg[maxn << 2];struct Q{    int n, q;int main(){    ios::sync_with_stdio(0), cin.tie(0);    cin >> q;    for(int i = 0; i < q; i++){        int t, k;        cin >> t >> k;        if(k == 3){                    }    }}`