Problem:
Given an array of ints, return true if the sum of all the 2's in the array is exactly 8.
sum28({2, 3, 2, 2, 4, 2}) → true
sum28({2, 3, 2, 2, 4, 2, 2}) → false
sum28({1, 2, 3, 4}) → false
Solution:
public boolean sum28(int[] nums) { boolean result =false; int sum = 0; for (int i = 0; i <nums.length;i++) { if (nums[i] == 2) sum+=2; } if (sum == 8) result = true; return result; }
public boolean sum28(int[] nums) {
ReplyDeleteint sum =0;
for(int i=0; i<nums.length; i++){
if(nums[i]==2){
sum+=2;
}
}
return sum==8;
}
int sum=0;
ReplyDeletefor(int i=0; i<nums.length;i++) {
if(nums[i]==2){
sum+=nums[i];
}
}
return (sum==8)? true:false;
public boolean sum28(int[] nums) {
ReplyDeleteint count2 = 0;
for (int i=0; i<nums.length; i++) {
if (nums[i]==2)
count2 += 1;
}
return (count2*2==8);
}
public boolean sum28(int[] nums) {
ReplyDeleteint s=0;
for (int i=0; i<nums.length; i++)
s+= nums[i]==2 ? 2:0;
return s==8 ? true:false;
}
public boolean sum28(int[] nums) {
ReplyDeletereturn Arrays.toString(nums).replaceAll("[^2]", "").length() == 4;
}
public boolean sum28(int[] nums) {
ReplyDeleteint count=0;
for(int i=0;i<nums.length;i++){
if(nums[i]==2)
count++;}
return count==4;
}
public boolean sum28(int[] nums) {
ReplyDeleteint count =0;
for(int i =0; i<nums.length; i++){
if(nums[i]==2){
count++;
}
}
if(count == 4){
return true;
}
else
return false;
}
public boolean sum28(int[] nums) {
ReplyDeleteint sum = 0;
for(int i = 0; i < nums.length; i ++ ){
if(nums[i] == 2){
sum = sum + nums[i];
}
}
if(sum == 8){
return true;
}
return false;
}
public boolean sum28(int[] nums)
ReplyDelete{
int value = 0;
for(int i = 0; i < nums.length; i++)
{
if(nums[i] == 2) value += 2;
}
return (value == 8);
}
With Java Stream
ReplyDeletepublic boolean sum28(int[] nums) {
int sum = Arrays.stream(nums)
.filter(i -> i == 2)
.sum();
return sum == 8;
}