modThree([2, 1, 3, 5]) → true
modThree([2, 1, 2, 5]) → false
modThree([2, 4, 2, 5]) → true
Answer 1:
public boolean modThree(int[] nums) {
for(int i=0;i<nums.length-2;i++){
if((nums[i]%2==0 && nums[i+1]%2==0 && nums[i+2]%2==0) ||
(nums[i]%2==1 && nums[i+1]%2==1 && nums[i+2]%2==1)
)return true;
}
return false;
}
Answer 2:
public boolean modThree(int[] nums) {Reference
int odd = 0;
int even = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] % 2 == 0) {
even++;
if (odd < 3) odd = 0;
}
else {
odd++;
if (even < 3) even = 0;
}
}
return (odd == 3 || even == 3);
}
http://www.javaproblems.com/2013/11/java-array-2-modthree-codingbat-solution.html
No comments :
Post a Comment