本文主要是介绍LeetCode--1012. Complement of Base 10 Integer 1013. Pairs of Songs With Total Durations Divisible,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
好久没更LeetCode了,因为最近手头的事情比较多。今天更新两条easy问题。
1013. Pairs of Songs With Total Durations Divisible by 60
这个问题是一个模算术问题。将歌曲时长转为[0,59]余数即可。
class Solution {public int numPairsDivisibleBy60(int[] time) {int divisor=60;int[] complementCounter=new int[divisor];int ans=0;for(int i=0;i<time.length;i++){complementCounter[time[i]%divisor]++;}for(int i=1;i<divisor/2;i++)ans += complementCounter[i]*complementCounter[divisor-i];ans+=complementCounter[0]*(complementCounter[0]-1)/2;ans+=complementCounter[divisor/2]*(complementCounter[divisor/2]-1)/2;return ans;}
}
1012. Complement of Base 10 Integer
十分基本的位运算,我写的不够简洁,用while循环更好一点
class Solution {public int bitwiseComplement(int N) {int ret=0;int mask=1;int tmp=N;for(int i=0;i<32;i++){if((N & mask)==0)ret += mask;mask<<=1;tmp>>=1;if(tmp==0)break;}return ret;}
}
这篇关于LeetCode--1012. Complement of Base 10 Integer 1013. Pairs of Songs With Total Durations Divisible的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!