##
**Problem:**

Given two arrays, A and B, of non-negative int scores. A "special" score is one which is a multiple of 10, such as 40 or 90. Return the sum of largest special score in A and the largest special score in B. To practice decomposition, write a separate helper method which finds the largest special score in an array. Write your helper method after your scoresSpecial() method in the JavaBat text area.

scoresSpecial({12, 10, 4}, {2, 20, 30}) → 40

scoresSpecial({20, 10, 4}, {2, 20, 10}) → 40

scoresSpecial({12, 11, 4}, {2, 20, 31}) → 20

##
**Solution:**

public int scoresSpecial(int[] a, int[] b) { int spec1 = helper(a); int spec2 = helper(b); return spec1 + spec2; } public int helper(int[] a) { int tmp = 0; for (int i = 0; i < a.length; i++) { if (a[i] % 10 == 0 && a[i] > tmp) tmp = a[i]; } return tmp; }

public int scoresSpecial(int[] a, int[] b) {

ReplyDeleteint sum = 0;

int max = 0;

int max1 = 0;

for (int i = 0; i < a.length; i++) {

if (a[i] > max && a[i] % 10 == 0) {

max = a[i];

}

}

for (int j = 0; j < b.length; j++) {

if (b[j] > max1 && b[j] % 10 == 0) {

max1 = b[j];

}

}

sum = max + max1;

return sum;

}

public int scoresSpecial(int[] a, int[] b) {

ReplyDeletereturn max(a) + max(b);

}

private int max(int[] n) {

int high = 0;

for (int i = 0; i < n.length; i++) {

if (n[i] > high && n[i] % 10 == 0) {

high = n[i];

}

}

return high;

}