# HackerEarth Digital Sequence problem solution

In this HackerEarth Digital Sequence problem solution, You are given an array A of length N. You need to find the maximum length of a subsequence of A which contains any one digit common in all the elements of that subsequence. You are not allowed to count leading zeroes.

## HackerEarth Digital Sequence problem solution.

`import java.io.OutputStream;import java.io.IOException;import java.io.InputStream;import java.io.PrintWriter;import java.io.FilterInputStream;import java.io.BufferedInputStream;import java.io.InputStream;public class Solution {    public static void main(String[] args) {        new Thread(null, new Runnable() {            public void run() {                new Solution().solve();            }        }, "1", 1 << 26).start();    }    void solve() {        InputStream inputStream = System.in;        OutputStream outputStream = System.out;        ScanReader in = new ScanReader(inputStream);        PrintWriter out = new PrintWriter(outputStream);        DIGITIAL_SEQUENCE solver = new DIGITIAL_SEQUENCE();        solver.solve(1, in, out);        out.close();    }    static class DIGITIAL_SEQUENCE {        public void solve(int testNumber, ScanReader in, PrintWriter out) {            int n = in.scanInt();            int[] ans = new int[10];            for (int i = 0; i < n; i++) {                int temp = in.scanInt();                boolean[] check = new boolean[10];                while (temp > 0) {                    check[(temp) % 10] = true;                    temp /= 10;                }                for (int j = 0; j < 10; j++) ans[j] += (check[j] ? 1 : 0);            }            int max = 0;            for (int i = 0; i < 10; i++) max = Math.max(max, ans[i]);            out.println(max);        }    }    static class ScanReader {        private byte[] buf = new byte[4 * 1024];        private int index;        private BufferedInputStream in;        private int total;        public ScanReader(InputStream inputStream) {            in = new BufferedInputStream(inputStream);        }        private int scan() {            if (index >= total) {                index = 0;                try {                    total = in.read(buf);                } catch (Exception e) {                    e.printStackTrace();                }                if (total <= 0) return -1;            }            return buf[index++];        }        public int scanInt() {            int integer = 0;            int n = scan();            while (isWhiteSpace(n)) n = scan();            int neg = 1;            if (n == '-') {                neg = -1;                n = scan();            }            while (!isWhiteSpace(n)) {                if (n >= '0' && n <= '9') {                    integer *= 10;                    integer += n - '0';                    n = scan();                }            }            return neg * integer;        }        private boolean isWhiteSpace(int n) {            if (n == ' ' || n == '\n' || n == '\r' || n == '\t' || n == -1) return true;            else return false;        }    }}`