Day 24:100301. 构成整天的下标对数目II

Leetcode 100301. 构成整天的下标对数目II

给你一个整数数组 hours,表示以 **小时 **为单位的时间,返回一个整数,表示满足 i < j 且 hours[i] + hours[j] 构成 **整天 **的下标对 i, j 的数目。

**整天 **定义为时间持续时间是 24 小时的 **整数倍 **。

例如,1 天是 24 小时,2 天是 48 小时,3 天是 72 小时,以此类推。

image.png

把所有数据对 24 取余存储到一个数组中。
对于每一个值找对应的 24 - i 的数目,进行相乘得到结果。对于 0 和 12 要特殊考虑。

完整代码

class Solution {public long countCompleteDayPairs(int[] hours) {long[] times = new long[24];for (int hour : hours) {times[hour % 24]++;}long res = 0;// 0 和 12if (times[0] > 1) {res += (times[0] * (times[0] -  1)) / 2;}if (times[12] > 1) {res += (times[12] * (times[12] -  1)) / 2;}for (int i = 1; i < 12; i++) {if (times[i] > 0 && times[24 - i] > 0) {res += times[i] * times[24 - i];}}return res;}
}

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

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

相关文章

在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析

在Spring Cloud项目中集成Springdoc OpenAPI生成OpenAPI 3文档的详细解析 在Spring Cloud项目中生成OpenAPI 3文档&#xff0c;可以使用Springdoc OpenAPI。Springdoc OpenAPI提供了一种简单的方法来生成符合OpenAPI 3规范的API文档。以下是详细的步骤和解析&#xff0c;展示如…

助力樱桃智能自动化采摘,基于YOLOv5全系列【n/s/m/l/x】参数模型开发构建果园种植采摘场景下樱桃成熟度智能检测识别系统

随着科技的飞速发展&#xff0c;人工智能&#xff08;AI&#xff09;技术已经渗透到我们生活的方方面面&#xff0c;从智能家居到自动驾驶&#xff0c;再到医疗健康&#xff0c;其影响力无处不在。然而&#xff0c;当我们把目光转向中国的农业领域时&#xff0c;一个令人惊讶的…

虾皮平台API:获取商品买家评论数据

一、接口核心功能 在电商领域&#xff0c;买家评论对于商品的销售和商家的口碑至关重要。虾皮作为东南亚地区知名的电商平台&#xff0c;为商家提供了丰富的商品买家评论数据。为了方便商家获取这些数据&#xff0c;我们的API接口服务其核心功能就是获取商品买家评论数据信息。…

2024年6月17日--6月23日(渲染+ue独立游戏,)

工作要继续做渲染了&#xff0c;所以还是要把渲染搞一搞。 试过重点放在独立游戏上&#xff0c;有个indienova独立游戏团队是全职的&#xff0c;由于他们干了几个月&#xff0c;节奏暂时跟不上&#xff0c;紧张焦虑了。五一时也有点自暴自弃了&#xff0c;实在没必要&#xff…

docker和docker compose 部署

一. 将微服务运行在docker上&#xff1a; 1.新建一个空文件夹docker-demo&#xff0c;在里面再新建文件夹app&#xff0c;在app目录下新建一个名为Dockerfile的文件。 2.编写Dockerfile文件 3.构建镜像 4.启动镜像 5.可以访问了。 二使用Dockerfile构建微服务镜像 1.将j…

微信小程序录音和头像上传

录音&#xff1a; WXML <view class"box4">{{time}}</view> <button bind:tap"recorderBtn">开始录音</button> <button bind:tap"removeBtn">结束录音</button> <button bind:tap"playBtn"…

Spring (60)Spring WebFlux

Spring WebFlux 是 Spring 5.0 引入的新的响应式框架&#xff0c;用于构建异步的、非阻塞的和事件驱动的服务。WebFlux 使用了 Reactor 作为其响应式库&#xff0c;该库基于 Reactive Streams 规范。 核心概念 在深入了解之前&#xff0c;我们需要明确几个关键概念&#xff1…

Python | Leetcode Python题解之第160题相交链表

题目&#xff1a; 题解&#xff1a; class Solution:def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> ListNode:A, B headA, headBwhile A ! B:A A.next if A else headBB B.next if B else headAreturn A

golang学习笔记——结构体嵌套接口

文章目录 结构体嵌套接口结构体嵌套结构体结构体实现接口接口嵌套接口结构体嵌套接口例子1例子2 总结参考资料 结构体嵌套接口 今天看k8s client-go源码时发现&#xff0c;结构体嵌套接口的现象。 // deployments implements DeploymentInterface type deployments struct {c…

gt9x双击唤醒屏幕

里面可以看到irq 和 rst的gpio引脚从设备树获取失败&#xff0c;排查设备树发现是属性名写错了&#xff1a; c &i2c1 {status "okay";goodix_ts5d {compatible "goodix,gt9xx";reg <0x5d>;// tp-size <89>;touchscreen-size-x <12…

Go Goroutine 究竟可以开多少?(详细介绍)

Go Goroutine 究竟可以开多少&#xff1f; Go语言因其高效的并发处理能力而备受欢迎&#xff0c;而Goroutine则是Go语言实现并发编程的核心。Goroutine比传统的线程更加轻量&#xff0c;允许开发者轻松地处理大量并发任务。那么&#xff0c;Go语言中的Goroutine究竟可以开多少…

6.1触发器的创建、删除和使用

6.1.1 触发器概述 触发器是一个被指定关联到表的数据库对象&#xff0c;与表的关系密切&#xff0c;不需要用户调用&#xff0c;在一个表的特定事件出现时将会被激活&#xff0c;此时某些MySql语句会自动执行。 触发器用于实现数据库的完整性&#xff0c;具有以下特点&#xff…

深入了解RSA加密算法

目录 前言 一、什么是RSA&#xff1f; 二、RSA加密的基本概念 1.非对称加密 2.密钥生成 3.加密和解密 三、RSA加密的工作原理 四、RSA的应用场景 五、RSA加密解密的实现 六、RSA算法的局限性及改进措施 前言 在当今的数字化时代&#xff0c;信息的安全性成为了人们关注…

密码学-密码协议之零知识证明

一、前言 零知识证明实际上一种密码协议&#xff0c;该协议的一方称为证明者(Prover)&#xff0c;通常用P表示&#xff0c;协议的另一方是验证者(Verifier)&#xff0c;一般用V表示。零知识证明是指P试图使V相信某个论断是正确的&#xff0c;但却不向V提供任何有用的信息&…

Photoshop中图像美化工具的应用

Photoshop中图像美化工具的应用 Photoshop中的裁剪工具Photoshop中的修饰工具模糊工具锐化工具涂抹工具 Photoshop中的颜色调整工具减淡工具加深工具海绵工具 Photoshop中的修复工具仿制图章工具污点修复画笔工具修复画笔工具修补工具内容感知移动工具红眼工具 Photoshop中的裁…

【杂记-浅谈以太网IP数据帧】

一、以太网数据帧 以太网数据帧是网络通信的基础单元&#xff0c;遵循IEEE 802.3标准&#xff0c;用于在以太网中传输数据。一个典型的以太网数据帧包括前导码、帧开始符、目的MAC地址、源MAC地址、类型或长度字段、数据载荷和帧校验序列。其中&#xff0c;类型字段指明了上层…

数据可视化:让数据讲述故事

数据可视化&#xff1a;让数据讲述故事 引言 在信息爆炸的时代&#xff0c;数据无处不在。然而&#xff0c;数据本身并不直观&#xff0c;很难从中直接获取有价值的信息。数据可视化作为一种强大的工具&#xff0c;能够帮助我们揭示数据背后的故事&#xff0c;让我们以更直观…

Spring Boot顶层接口实现类注入项目的方法

1、背景 在项目中&#xff0c;我们通常会具有同一特性的业务类定义一个顶层接口&#xff0c;让业务类实现这个接口&#xff0c;通过接口规范来管理这些类。我们将这些实现接口的业务类交托给Spring容器接口后&#xff0c;有时候需要根据业务类型来选择动态选择对应的业务类阿里…

尚品汇-(二)

一&#xff1a;环境安装 1.安装JAVA 运行环境 第一步&#xff1a;上传或下载安装包 cd /usr/local jdk-8u152-linux-x64.tar.gz 第二步&#xff1a;解压安装包 tar -zxvf jdk-8u152-linux-x64.tar.gz 第三步&#xff1a;建立软连接&#xff08;快捷方式&#xff09; ln -…

SpringBoot配置第三方专业缓存技术Redis

Redis缓存技术 Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的内存中数据结构存储系统&#xff0c;通常用作数据库、缓存和消息中间件。它支持多种数据结构&#xff0c;如字符串、哈希表、列表、集合、有序集合等&#xff0c;并提供了丰富的功能和灵活的…