leetcode 3185. 构成整天的下标对数目 II 中等

ops/2024/10/24 18:50:31/

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

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

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

示例 1:

输入: hours = [12,12,30,24,24]

输出: 2

解释:

构成整天的下标对分别是 (0, 1) 和 (3, 4)

示例 2:

输入: hours = [72,48,24,3]

输出: 3

解释:

构成整天的下标对分别是 (0, 1)(0, 2) 和 (1, 2)

提示:

  • 1 <= hours.length <= 5 * 10e5
  • 1 <= hours[i] <= 10e9

分析:和3184题意一样,但是数据范围变大,因此不能用暴力的方法去解决。可以用哈希的方法,把所有的值映射到24以内,再去查找余数之和为24及其倍数的两个数有多少即可。

long long countCompleteDayPairs(int* hours, int hoursSize) {long long hash_table[24]={0};for(int i=0;i<hoursSize;++i)hash_table[hours[i]%24]++;long long ans=0;ans+=hash_table[0]*(hash_table[0]-1)/2+hash_table[12]*(hash_table[12]-1)/2;for(int i=1;i<12;++i){ans+=hash_table[i]*hash_table[24-i];}return ans;
}


http://www.ppmy.cn/ops/128129.html

相关文章

Vue3 Echarts中国地图(包含轮播高亮区域)

vue3使用echarts去实现中国地图轮播高亮也是花了时间和精力的学习内容&#xff08;希望大家分享学习内容的时候 能够认真一点 不要贴一大堆代码上去 根本用不了 可以多写一些注释 谢谢。&#xff09; 我先直接贴代码 import { defineProps, ref, watch, onMounted, toRaw } fr…

在linux上部署ollama+open-webu,且局域网访问教程

在linux上部署ollamaopen-webu&#xff0c;且局域网访问教程 运行ollamaopen-webui安装open-webui &#xff08;待实现&#xff09;下一期将加入内网穿透&#xff0c;实现外网访问功能 本文主要介绍如何在Windows系统快速部署Ollama开源大语言模型运行工具&#xff0c;并使用Op…

GCC静态库与动态库链接顺序的深坑

有三个工程文件&#xff0c;A为SDL2动态库&#xff0c;B为基于A的静态库&#xff0c;C为基于A和B的主程序EXE&#xff0c;现在发现这个问题&#xff1a; 在C程序链接器命令的时候&#xff0c;通常像这种写法-lSDL2 -lLibB&#xff0c;此时就会报B报错找不到A中的函数&#xff…

Centos编写mysql备份脚本

1. 编写 MySQL 备份脚本 创建一个名为 backup.sh 的脚本&#xff0c;定期备份 fuint-food 数据库。 #!/bin/bash # 获取当前时间戳 TIMESTAMP$(date "%F-%H%M") # 备份存储路径 BACKUP_DIR"/path/to/backup/$TIMESTAMP" # MySQL 相关信息 MYSQL_USER&quo…

Linux运维篇-误操作已经做了pv的磁盘导致pv异常

目录 故障场景排错过程小结 故障场景 在对/dev/vdb1创建了pv并扩容至vg(klas)之后&#xff0c;不小心对/dev/vdb进行了parted操作&#xff0c;删除了/dev/vdb1导致pvs查看显示异常。具体过程如下所示&#xff1a; 正常创建pv 将创建好的pv添加到系统现有的卷组中 不小心又对…

怎么提取pdf的某一页?批量提取pdf的某一页的简单方法

怎么提取pdf的某一页&#xff1f;在日常工作与学习中&#xff0c;我们经常会遇到各式各样的PDF文件&#xff0c;它们以其良好的兼容性和稳定性&#xff0c;成为了信息传输和存储的首选格式。然而&#xff0c;在浩瀚的文档海洋中&#xff0c;有时某个PDF文件中的某一页内容尤为重…

RHCE的练习(5)

虚拟目录 第一步&#xff1a; 关闭防火墙&#xff08;因为要与外部连接访问&#xff09; [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0第二步&#xff1a; 创建新IP地址&#xff08;用于区分&#xff09; [rootlocalhost ~]# nmcli connecti…

京东商品详情API全攻略:返回值字段一网打尽

京东商品详情API是京东开放平台提供的一个重要接口&#xff0c;它允许开发者获取京东平台上商品的详细信息。这些信息对于电商从业者、数据分析师以及需要进行商品信息监控和比价的开发者来说非常有价值。下面是一份京东商品详情API的全攻略&#xff0c;包括返回值字段的详细解…