如何在一个数组中,找到两个数的和能K整除

如何在一个数组中,找到两个数的和能K整除?((a[i]+a[j])%K=0)规定只能用O(n)的时间复杂度
全部评论
(a+b)%k = 0 -> a %k + b %k = k 可以通过hash来做,每次遍历a[i]的时候看看hash里是否有k-(a[i]%k),如果没有则hash.add(a[i]%k, a[i]) 复杂度为O(n)
点赞
送花
回复
分享
发布于 2015-08-26 00:00

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务