## Problem:

For each multiple of 10 in the given array, change all the values following it to be that multiple of 10, until encountering another multiple of 10. So {2, 10, 3, 4, 20, 5} yields {2, 10, 10, 10, 20, 20}.

tenRun({2, 10, 3, 4, 20, 5}) → {2, 10, 10, 10, 20, 20}
tenRun({10, 1, 20, 2}) → {10, 10, 20, 20}
tenRun({10, 1, 9, 20}) → {10, 10, 10, 20}

## Solution:

public int[] tenRun(int[] nums) {
boolean ten = false;
int tmp = 0;

for (int i = 0; i < nums.length; i++) {
if (nums[i] % 10 == 0) {
tmp = nums[i];
ten = true;
}
else if (nums[i] % 10 != 0 && ten) {
nums[i] = tmp;
}
}
return nums;
}

#### 4 comments :

1. public int[] tenRun(int[] nums) {
int temp = 0;
for (int i=0; i<nums.length-1; i++)
{
if (nums[i]%10==0 && nums[i+1]%10!=0) nums[i+1] = nums[i];
}
return nums;
}

2. public int[] tenRun(int[] nums) {
int val = 1;
boolean wasTen = false;

for(int i = 0; i < nums.length; i++) {
if(nums[i] % 10 == 0 && nums[i] != val) {
val = nums[i];
wasTen = true;
}
if(wasTen) nums[i] = val;
}

return nums;

}

3. public int[] tenRun(int[] nums) {
for (int i=0; i<nums.length-1; i++) {
if (nums[i]%10==0 && nums[i+1]%10!=0) {
nums[i+1] = nums[i];
}
}
return nums;
}

4. public int[] tenRun(int[] nums) {
for (int i=0; i<nums.length-1; i++) {
if (nums[i]%10==0 && nums[i+1]%10!=0) {
nums[i+1] = nums[i];
}
}
return nums;
}