力扣-2269. 找到一个数字的 K 美丽值

文章目录

力扣题目

一个整数 num 的 k 美丽值定义为 num 中符合以下条件的 子字符串 数目:

子字符串长度为 k 。

子字符串能整除 num 。

给你整数 num 和 k ,请你返回 num 的 k 美丽值。

注意:

允许有 前缀 0 。

0 不能整除任何值。

一个 子字符串 是一个字符串里的连续一段字符序列。

示例 1:

输入:num = 240, k = 2

输出:2

解释:以下是 num 里长度为 k 的子字符串:

  • "240" 中的 "24" :24 能整除 240 。
  • "240" 中的 "40" :40 能整除 240 。
    所以,k 美丽值为 2 。
    示例 2:

输入:num = 430043, k = 2

输出:2

解释:以下是 num 里长度为 k 的子字符串:

  • "430043" 中的 "43" :43 能整除 430043 。
  • "430043" 中的 "30" :30 不能整除 430043 。
  • "430043" 中的 "00" :0 不能整除 430043 。
  • "430043" 中的 "04" :4 不能整除 430043 。
  • "430043" 中的 "43" :43 能整除 430043 。
    所以,k 美丽值为 2 。

代码工程

C++实现

cpp 复制代码
class Solution {
public:
    int divisorSubstrings(int num, int k) 
    {
        int res = 0;
        string s = to_string(num);/*将十进制数字转化为字符串*/
        /*s.length() - k + 1是确保s.substr(i, k)能正好取到字符串结尾*/
        for(int i = 0; i < s.length() - k + 1; i++)
        {
            int tmp = stoi(s.substr(i, k));
            if((tmp != 0) && (num % tmp == 0))
            {
                res++;
            }
        }

        return res;
    }   
};

python实现

cpp 复制代码
class Solution:
    def divisorSubstrings(self, num: int, k: int) -> int:
        my_str = str(num)
        n = len(my_str)
        res = 0
        for i in range(n - k + 1):
            tmp = int(my_str[i:i+k])
            if tmp != 0 and num % tmp == 0:
                res += 1 
        
        return res
相关推荐
j7~16 小时前
【穷举、深搜与回溯算法】一棵决策树讲透全排列与子集
数据结构·c++·算法·leetcode·回溯·递归
Shaoshing17 小时前
LeetCode100 42.接雨水
java·算法·leetcode
文丑颜不良啊19 小时前
LeetCode1261~1280题目解析
java·leetcode
Shaoshing19 小时前
LeetCode100 11. 盛最多水的容器
算法·leetcode
海绵宝宝转agent20 小时前
Leetcode二叉树算法个人理解
笔记·学习·算法·leetcode·深度优先
Rain的Java大神之路20 小时前
面试被LeetCode 27(移除元素)问懵?别再用两层 for 循环了:一道“简单题”吃透双指针原地删除,附面试加分话术 + 11 个避坑清单
后端·leetcode·面试
重生之小比特1 天前
【算法拾光】前缀和|连续的子数组和 + 和相同的二元子数组
算法·leetcode·哈希算法
Pniubi1 天前
力扣 102二叉树的层序遍历(广度优先搜索)
leetcode·宽度优先
一去不复返的通信er1 天前
力扣15:盛最多水的容器
算法·leetcode
Navigator_Z1 天前
LeetCode //C - 1309. Decrypt String from Alphabet to Integer Mapping
c语言·算法·leetcode