总持续时间可被 60 整除的歌曲

求解代码

java 复制代码
public int numPairsDivisibleBy60(int[] time) {
            // 创建长度为60的数组,下标对应余数0~59,存储对应余数出现的次数
            int[] arr = new int[60];

            int ans = 0;

            for (int t : time) {
                // 计算当前时长对60取余,将数值范围压缩到 0~59
                t %= 60;

                //查找能和当前余数t配对的余数的出现次数,累加到结果中
                ans += arr[(60 - t) % 60];

                // 将当前余数的计数+1,存入数组,供后续元素配对使用
                arr[t]++;
            }

            return ans;
        }
相关推荐
故事和你9119 小时前
洛谷-【图论2-3】最小生成树1
开发语言·数据结构·c++·算法·动态规划·图论
砍材农夫19 小时前
物联网 基于netty构建mqtt协议规范(三种 QoS 等级)
java·开发语言·物联网
NiceCloud喜云19 小时前
Claude API 流式输出(SSE)实战:从打字机效果到工具调用全流程
java·前端·ide·人工智能·chrome·intellij-idea·状态模式
故事和你9119 小时前
洛谷-【图论2-3】最小生成树2
开发语言·数据结构·c++·算法·动态规划·图论
甲方大人请饶命19 小时前
Java-IO流
java·开发语言
SimonKing19 小时前
别再死磕 Elasticsearch 了,这个轻量级搜索引擎更香
java·后端·程序员
asdfg125896319 小时前
一文理解“工程化思维”
java·编程思想
阿昌喜欢吃黄桃19 小时前
并发线程工具类分享
java·线程池·多线程·并发·juc
Rsun0455119 小时前
try-with-resources跟try-catch-finally的区别
java
计算机安禾19 小时前
【c++面向对象编程】第35篇:构造函数与异常:如何避免资源泄露?
开发语言·javascript·c++·算法·性能优化