100103.分类求和并做差

​​题目来源:

leetcode题目,网址:100103. 分类求和并作差 - 力扣(LeetCode)

解题思路:

初始时,num1 为 1 到 n 所有数之和,num2 为 0.然后遍历所有能被m 整除的整数,将其和赋予 num2. num1=num1-num2。

解题代码:

复制代码
class Solution {
    public int differenceOfSums(int n, int m) {
        int num1=0;
        int num2=0;
        num1=(1+n)*n/2;
        for(int i=1;i*m<=n;i++){
            num1-=i*m;
            num2+=i*m;
        }
        return num1-num2;
    }
}

总结:

num2 可以通过等差数列求和公式 和 n/m 直接求得。

无官方题解。


相关推荐
guo_wen_qiang8 分钟前
二叉树的层序遍历-使用双端队列Deque
算法·leetcode·1024程序员节
爱读书的小胖24 分钟前
LeetCode 55 跳跃游戏 C 语言解题分析
c语言·数据结构·算法·leetcode·1024程序员节
念何架构之路1 小时前
Go reflect 包:结构体反射 —Field、Tag 与 VisibleFields
java·数据库·golang
liangbo71 小时前
03-JDK 10/11 局部变量推断与 LTS:var 到底该怎么用
java
Percep_gan2 小时前
调用天翼云的对象存储ZOS,很详细
java·1024程序员节
Navigator_Z2 小时前
LeetCode //C - 1300. Sum of Mutated Array Closest to Target
c语言·算法·leetcode
若亦_2 小时前
数据结构>>优先级队列(堆)
java·数据结构
Wang's Blog2 小时前
Java 项目实战: 交友项目 - 查询圈子个人动态:查询我的动态需求分析
java·开发语言·交友
denlaku2 小时前
JDK 23 新特性详解
java
凯瑟琳.奥古斯特2 小时前
力扣1016高效解法:剪枝优化技巧
开发语言·c++·算法·leetcode·职场和发展