当前位置: 首页 > news >正文

LeetCode 2894.分类求和并作差

目录

题目:

题目描述:

题目链接:

思路:

思路一详解(遍历 + 判断):

思路二详解(数学规律/公式):

代码:

Java思路一(遍历 + 判断)代码:

Java思路二(数学规律/公式)代码:


题目:

题目描述:

题目链接:

2894. 分类求和并作差 - 力扣(LeetCode)

思路:

思路一详解(遍历 + 判断):

按照题目要求,从1遍历到n,判断每个数是否能被m整除,若能被m整除将该数加至num2,若不能被m整除将该数加至num1,最后返回num1-num2即可

时间复杂度:O(n)  1<=n,m<=1000  数据很小不会超时

思路二详解(数学规律/公式):

这里直接引用灵神-“灵茶山艾府”的数学推导图

时间复杂度:O(1)

代码:

Java思路一(遍历 + 判断)代码:

class Solution {public int differenceOfSums(int n, int m) {int num1=0;int num2=0;for(int i=1;i<=n;i++){if(i%m==0){num2+=i;}else{num1+=i;}}return num1-num2;}
}

Java思路二(数学规律/公式)代码:

class Solution {public int differenceOfSums(int n, int m) {return n*(n+1)/2 - n/m*(n/m+1)*m;}
}

http://www.dtcms.com/a/238706.html

相关文章:

  • 基于51单片机的花样流水灯
  • 6个月Python学习计划 Day 17 - 继承、多态与魔术方法
  • 程序问题实录
  • Python BeautifulSoup解析HTML获取图片URL并下载到本地
  • 【电路】阻抗匹配
  • 云原生架构赋能企业数字化转型:从理念到落地的系统性探索
  • springboot3.5整合Spring Security6.5默认密码没有打印输出控制台排查过程
  • BeanFactory 和 FactoryBean 有何区别与联系?
  • 在vs2022中的program.cs中已经没有app.useEndpoints
  • 分词算法总结:不同分词算法的优点和缺点
  • K8S认证|CKS题库+答案| 8. 沙箱运行容器 gVisor
  • 从入门到实战:AI学习路线全解析——避坑指南
  • AUTOSAR实战教程--开放式通用DoIP刷写工具OpenOTA开发计划
  • shell脚本 --案例实操
  • 【优选算法】模拟 问题算法
  • 【CSS-7】深入解析CSS伪类:从基础到高级应用
  • 73常用控件_QFormLayout的使用
  • SQL 注入开放与修复
  • 针对异构数据的联邦学习
  • Linux 基础IO(下)
  • D25异常处理
  • 【学习笔记】深入理解Java虚拟机学习笔记——第5章 调优案例分析与实战
  • NLP学习路线图(三十二): 模型压缩与优化
  • 从认识AI开始-----变分自编码器:从AE到VAE
  • LangChain工具集成实战:构建智能问答系统完整指南
  • springboot3.x对接AI智谱清言
  • 前端获取接口数据流程
  • 利用coze工作流制作一个自动生成PPT的智能体
  • ORACLE 修改端口号之后无法启动?
  • 安装Openstack