本文主要是介绍LeetCode2575. Find the Divisibility Array of a String,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 一、题目
- 二、题解
一、题目
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:
div[i] = 1 if the numeric value of word[0,…,i] is divisible by m, or
div[i] = 0 otherwise.
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:
1 <= n <= 105
word.length == n
word consists of digits from 0 to 9
1 <= m <= 109
二、题解
class Solution {
public:vector<int> divisibilityArray(string word, int m) {int n = word.size();vector<int> res(n);long long x = 0;for(int i = 0;i < n;i++){x = (x * 10 + word[i] - '0') % m;res[i] = x == 0;}return res;}
};
这篇关于LeetCode2575. Find the Divisibility Array of a String的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!