2575. Find the Divisibility Array of a String

Difficulty:
Related Topics:
Similar Questions:

Problem

You are given a 0-indexed string word of length n consisting of digits, and a positive integer m.

The divisibility array div of word is an integer array of length n such that:

Return** the divisibility array of**** **word.

Example 1:

Input: word = "998244353", m = 3
Output: [1,1,0,0,0,1,1,0,0]
Explanation: There are only 4 prefixes that are divisible by 3: "9", "99", "998244", and "9982443".

Example 2:

Input: word = "1010", m = 10
Output: [0,1,0,1]
Explanation: There are only 2 prefixes that are divisible by 10: "10", and "1010".

Constraints:

Solution (Java)

class Solution {
    public int[] divisibilityArray(String word, int m) {
    int n = word.length();
    int[] div = new int[n];
    long remainder = 0;
    for (int i = 0; i < n; i++) {
            int digit = word.charAt(i) - '0';
            remainder = (remainder * 10 + digit) % m;
            if (remainder == 0) {
                div[i] = 1;
            }
        }
        return div;
    }
}

Explain:

nope.

Complexity: