取余,模运算,余数的正负问题,1497. 检查数组对是否可以被 k 整除

news2025/3/2 4:00:03

 首先,我们来看数学中对余数的定义

0到除数之间的整数,所以当除数是负数的时候,余数也是负数。

举个例子: 

 

接下来,我们看计算机中余数是怎么求的???

 所有的语言和计算器都遵循了让商靠近零的原则

在C++中用程序演示,

#include<iostream>
using namespace std;


int main()
{
	cout << (5 % 3) << endl;//输出:2
	cout << (5 % -3) << endl;//输出:2
	cout << (-5 % 3) << endl;//输出:-2
	cout << (-5 % -3) << endl;//输出:-2
	system("pause");//按任意键继续
	return 0;
}

 我们发现当两个数同号和数学中的结果是一样的,当两个数异号时和数学中的结果是不一样的。这是因为我们说 所有的语言和计算器都遵循了让商靠近零的原则。

当然 数学中余数的性质还是成立的。

 总结

C++中:

1)只有两个数都是正数的情况下,他们之间取余(a%b)所得的余数的符号才是正号
如:12%7=5 7%5=2
2)其他情况(a为正数,b为负数;a为负数,b为正数;a为负数,b为负数),他们之间的取余(a%b)等于|a|%|b|得到的余数加上a的符号
如:12%-7=5 -12%7=-5 -12%-7=-5
由上面可以看出余数的符号与被除数的符号相同

 n % p得到结果的正负由被除数n决定,与p无关。例如:7 % 4 = 3, -7 % 4 = -3, 7 % -4 = 3, -7 % -4 = -3(在java、C/C++中%是取余,例中的%按取余处理。在python是数学运算:-7 % 4 = 1, 7 % -4 = -1, 结果的正负仅与除数有关)。


1497. 检查数组对是否可以被 k 整除 

本题解析

本题除数是正的,所以 在数学上余数也是正的,但是在c++中,余数的符号与被除数相同

 所以会是负的,怎么变成正的呢?

class Solution:
    def canArrange(self, arr: List[int], k: int) -> bool:
        mod = [0] * k
        for num in arr:
            mod[num % k] += 1
        for i in range(1, k // 2 + 1):
            if mod[i] != mod[k - i]:
                return False
        return mod[0] % 2 == 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75059.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

防火墙豁免实验

♥️作者&#xff1a;小刘在C站 ♥️每天分享云计算网络运维课堂笔记&#xff0c;疫情之下&#xff0c;你我素未谋面&#xff0c;但你一定要平平安安&#xff0c;一 起努力&#xff0c;共赴美好人生&#xff01; ♥️夕阳下&#xff0c;是最美的&#xff0c;绽放&#xff0c;愿…

单商户商城系统功能拆解44—应用中心—小程序直播

单商户商城系统&#xff0c;也称为B2C自营电商模式单店商城系统。可以快速帮助个人、机构和企业搭建自己的私域交易线上商城。 单商户商城系统完美契合私域流量变现闭环交易使用。通常拥有丰富的营销玩法&#xff0c;例如拼团&#xff0c;秒杀&#xff0c;砍价&#xff0c;包邮…

shell 基本语法第四讲之(find(文件查找)、xargs(字符串拼凑)、sed(处理文本)、awk(文本处理)、crontab(系统定时器))

20、find(文件查找) 格式 find pathname -options [-print -exec -ok …] 命令说明举例-name按照文件名查找文件。find . -name “1.txt”-perm按照文件权限来查找文件。find . -perm 660-user按照文件属主来查找文件。-group按照文件所属的组来查找文件。-mtime -n n按照文件…

西电计网实验

《计算机通信与网络》网络实验 阅读须知&#xff1a;计网六次实验均已通过线下操作进行验收&#xff08;后面两次善意线上了&#xff09;&#xff0c;写报告由于描述流程困难&#xff0c;故采用eNSP对实验内容进行复现&#xff0c;故此报告实验的过程分析都是基于eNSP&#xf…

MBSE和刚亮相的B-21“突袭者”隐形轰炸机

DDD领域驱动设计批评文集>> 《软件方法》强化自测题集>> 《软件方法》各章合集>> 12月2日&#xff0c;B-21“突袭者”隐形轰炸机举行揭幕仪式。 摘译一篇来自制造商Northrop Grumman公司&#xff08;诺斯罗普格鲁曼公司&#xff09;网站上的文章片段。 利…

stm32cubemx hal学习记录:CAN

一、实验内容 RM C板&#xff0c;can1给can2发送数据 二、CAN总线简介 1、控制器局域网络&#xff1a;Controller Area Network 2、异步半双工通信 3、总线制 CAN由一对差分对&#xff08;两条线&#xff09;CANH和CANL组成 CANH电压比CANL高视为逻辑0&#xff08;显性电…

IDEA插件系列(3):Easy Javadoc插件——快速生成javadoc文档注释

1.插件介绍 Easy Javadoc插件。 能帮助开发者快速生成类、方法、属性等中文javadoc 2.安装方式 第一种安装方式是在线下载安装插件。 第二种安装方式是使用离线插件进行安装。 插件下载地址&#xff1a;https://plugins.jetbrains.com/plugin/12977-easy-javadoc 3.使…

梦开始的地方—— C语言预处理+编译过程

文章目录C语言程序的编译(预处理)1.编译和链接1) 编译的几个阶段预编译阶段编译阶段汇编阶段2) 链接2. 预处理1) 预定义符号2) #define3) #和##4) 带副作用的宏参数5) 宏和函数对比3. 常见预处理命令1) #undef2) 命令行定义3) 条件编译4) 文件包含5) 实现offsetofC语言程序的编…

Spring 中 @Autowired 修饰构造方法时注意事项

代码演示 给定一个类 One&#xff0c;然后看下的几种构造方法什么时候被调用 1、假设现在只有一个默认的空构造方法&#xff0c;代码如下&#xff1a; Component public class One {}然后追踪源码&#xff0c;如下所示&#xff1a; 先拿到所有声明的构造方法 然后挨个判断构…

总结Python设置Excel单元格样式的一切,比官方文档还详细

总结Python设置Excel单元格样式的一切&#xff0c;比官方文档还详细 Python对Excel表格处理非常方便&#xff0c;本文专门对Excel单元格样式设置进行总结&#xff0c;日常用到的设置基本都可以用openpyxl库完成。 创建一个表格 openpyxl是第三方库&#xff0c;如果你还没有安…

如何撰写好的科研论文:摘要(1)

导读 本系列将切片介绍如何写好科研论文&#xff0c;包含了&#xff1a;摘要&#xff0c;背景介绍&#xff0c;方法&#xff0c;结果&#xff0c;讨论等&#xff0c;本文[1]将从摘要开始。 1. 标准 Criteriapointline一般背景听众中的每个人都关心的事情。具体背景从每个人都关…

免费内网穿透工具测评对比,谁更好用 1

文章目录1. 前言2. 对比内容1.1官网主页对比1.2 用户注册对比1.3 用户功能页面对比1.4 客户端对比3. 结语1. 前言 自从接触到内网穿透服务&#xff0c;知道能把自家的电脑、树莓派、NAS等等一堆硬件改造成服务器后&#xff0c;笔者就陷入其中无法自拔&#xff0c;一会儿把树莓…

jmeter接口测试之大家都来我家领豆子

一、测试目的&#xff1a; 2万用户不停请求云豆领取接口时&#xff0c;查看服务器内存占用情况&#xff0c;从而确认服务器内存占用异常的情况是否得到修复。 二、测试策略&#xff1a; 用2万个账号&#xff0c;以每2秒100次请求的速度向服务器发出请求&#xff0c;观察内存…

c#入门-顶级语句和Main方法

程序入口 在你运行程序以后会弹出一个窗口&#xff0c;显示一行文字&#xff1a;Hello world 现在将代码中的所有东西再复制一遍。然后运行&#xff0c;就会得到两行Hello world 显然&#xff0c;我们的程序是写在这里的。 在这里写了什么&#xff0c;什么就会生效。 Main方…

【自动化测试】Pytest+Appium+Allure 做 UI 自动化的那些事

文本主要介绍下 PytestAllureAppium 记录一些过程和经历。 法主要用了啥: Python3 Appium Allure-pytest Pytest Appium 不常见却好用的方法 Appium 直接执行 adb shell 方法 Appium 启动时增加 --relaxed-security 参数 Appium 即可执行类似adb shell的方法 appium -p 4…

短视频账号搭建之Banner图和视频封面

前面在我赢小禾呈序里学了账号名称、头像和个人简介设置&#xff0c;今天把账号搭建的最后两部分一起公开&#xff1a; banner图是你主页上面的这个主图。 同样它的存在可以有三个作用&#xff1a; 第一个作用比较简单&#xff0c;就是让你的主页更好看。 听起来太简单了&am…

【软件测试】测试人在团队中没地位?怎么办?为什么会出现这样的问题?

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 为什么会出现这样的…

Linux 学习之:如何让代码在后台保持运行

文章目录nohup 命令使用场景使用方法nohup ... &nohup ... > train.log 2>&1 &结束进程参考文章nohup 命令 使用场景 比如我要在服务器里运行如下代码来训练我的深度学习模型&#xff1a; python train.py但是这样运行你一旦合上笔记本电脑或者换个工作环…

java版商城多商家入驻商城 直播带货商城 电子商务

一个好的SpringCloudSpringBoot b2b2c 电子商务平台涉及哪些技术、运营方案&#xff1f;以下是我结合公司的产品做的总结&#xff0c;希望可以帮助到大家&#xff01; 搜索体验小程序&#xff1a;海哇 1. 涉及平台 平台管理、商家端&#xff08;PC端、手机端&#xff09;、买家…

vxe table 虚拟滚动 表格每一行的高度不一致 出现空白

今天在做表格数据时&#xff0c;发现滚动表格会出现空白区域&#xff0c;如图所示 虚拟滚动表格每一行的高度不一致, 导致表格滚动时出现空白区域 然后在查阅资料时发现有设置:row-config"{height: 70}"这种 &#xff0c;试过发现不行 以下这个不可行 <vxe-grid…