【从零开始的LeetCode-算法】3099. 哈沙德数

如果一个整数能够被其各个数位上的数字之和整除,则称之为哈沙德数 (Harshad number)。给你一个整数 x 。如果 x哈沙德数 ,则返回x 各个数位上的数字之和,否则,返回-1

示例 1:

输入: x = 18

输出: 9

解释:

x 各个数位上的数字之和为 918 能被 9 整除。因此 18 是哈沙德数,答案是 9

示例 2:

输入: x = 23

输出: -1

解释:

x 各个数位上的数字之和为 523 不能被 5 整除。因此 23 不是哈沙德数,答案是 -1

提示:

  • 1 <= x <= 100

我的解答:

java 复制代码
class Solution {
    public int sumOfTheDigitsOfHarshadNumber(int x) {
        // 已经明确范围x的范围为[1,100]。直接差分个、十、百位计算
        return x % ( x % 10 +  (x % 100 - x % 10) / 10 + x / 100) == 0 
        ? ( x % 10 +  (x % 100 - x % 10) / 10 + x / 100) 
        : -1;
    }
}
相关推荐
信奥卷王40 分钟前
[GESP202503 五级] 原根判断
java·数据结构·算法
兮山与41 分钟前
算法4.0
算法
nju_spy43 分钟前
力扣每日一题(二)任务安排问题 + 区间变换问题 + 排列组合数学推式子
算法·leetcode·二分查找·贪心·排列组合·容斥原理·最大堆
初听于你43 分钟前
高频面试题解析:算法到数据库全攻略
数据库·算法
翟天保Steven1 小时前
ITK-基于Mattes互信息的二维多模态配准算法
算法
小咕聊编程1 小时前
【含文档+源码】基于SpringBoot的过滤协同算法之网上服装商城设计与实现
java·spring boot·后端
代码对我眨眼睛1 小时前
226. 翻转二叉树 LeetCode 热题 HOT 100
算法·leetcode·职场和发展
Zz_waiting.1 小时前
Spring 原理
java·spring·spring自动管理
黑色的山岗在沉睡2 小时前
LeetCode 494. 目标和
算法·leetcode·职场和发展
haoly19895 小时前
数据结构和算法篇-线性查找优化-移至开头策略
数据结构·算法·移至开头策略