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) { for(int i = 0; i < nums.length;i++) { if ( nums[i] % 10 == 0) { for (int j = i +1; j < nums.length && !(nums[j] % 10 == 0) ; j++) nums[j] = nums[i]; } } return nums; }
public int[] tenRun(int[] nums) {
ReplyDeleteint multiple = -1;
for(int i = 0; i < nums.length; i++) {
if(multiple != -1 && nums[i]%10 != 0) nums[i] = multiple;
if(nums[i]%10 == 0) multiple = nums[i];
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeleteint temp = 0;
boolean ten = false;
for(int i=0; i<nums.length; i++){
if(nums[i]%10==0){
temp = nums[i];
ten = true;
continue;
}
if(ten & nums[i]%10!=0){
nums[i] = temp;
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor (int i=0; i<nums.length; i++) {
if (nums[i] % 10 == 0)
while (i<nums.length-1 && nums[i+1] % 10 != 0) {
nums[i+1]=nums[i];
i++;
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDelete__for(int i = 0; i < nums.length-1; i++) {
___if(nums[i] % 10 == 0) {
_____if(nums[i+1] % 10 != 0)
_______nums[i+1] = nums[i];
___}
__}
__return nums;
}
Great solution !
Deletepublic int[] tenRun(int[] nums) {
ReplyDeleteint[] arr = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
int val = 10;
if (nums[i] % 10==0) {
while (i < nums.length) {
if (nums[i] % 10 == 0) {
if (val != nums[i]) {
val = nums[i];
}
arr[i] = nums[i];
i++;
} else {
arr[i] = val;
i++;
}
}
} else
arr[i] = nums[i];
}
return arr;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor (int i = 0; i<nums.length-1; i++) {
if (nums[i]%10==0&&nums[i+1]%10!=0) {
nums[i+1]=nums[i];
} else if(nums[i]%10==0&&nums[i+1]%10==0) {
nums[i]=nums[i];
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor (int i = 0; i<nums.length-1; i++) {
if (nums[i]%10==0&&nums[i+1]%10!=0) {
nums[i+1]=nums[i];
} else if(nums[i]%10==0&&nums[i+1]%10==0) {
nums[i]=nums[i];
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeleteif (nums.length<=1) {return nums;}
for (int i = 1; i < nums.length; i++) {
if (nums[i]%10==0) {continue;}
if (nums[i-1]%10 == 0) {
nums[i] = nums[i-1];
}
}
return nums;
}
int ar[]=new int [nums.length];
ReplyDeleteint k=-1;
for(int i =0; i<nums.length; i++) {
if(nums[i]%10==0) {
k=nums[i];
ar[i]=k;
}
if(nums[i]%10!=0 && k%10==0){
ar[i]=k;
}else if(nums[i]%10!=0 && k%10!=0) {
ar[i]=nums[i];
}
}
return ar;
ReplyDeleteint[] a = new int[nums.length];
int t = -1;
for(int i = 0; i < nums.length; i++){
if(nums[i] % 10 == 0 || nums[i] == 0) {
t = nums[i];
}
if (t != -1) {
a[i] = t;
} else {
a[i] = nums[i];
}
}
return a;
public int[] tenRun(int[] nums) {
ReplyDeleteint currentMultiple = 7; //bogus number to initialize variable
for(int i = 0; i < nums.length; i++) {
if(nums[i] % 10 == 0) {
currentMultiple = nums[i];
} else {
if(currentMultiple != 7) {
nums[i] = currentMultiple;
}
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor(int i = 0; i < nums.length - 1; i++) {
if(nums[i] % 10 == 0) {
while(nums[i+1] % 10 != 0) {
nums[i+1] = nums[i];
}
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeleteint[] result = new int[nums.length];
int setter = 0;
boolean index = false;
int target = 0;
for(int i = 0; i < nums.length; i++) {
if(nums[i] % 10 == 0){
result[i] = nums[i];
index = true;
setter = nums[i];
}
if(nums[i] % 10 !=0 && index){
result[i] = setter;
} else {
result[i] = nums[i];
}
}
return result;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor (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;
}
wrong code mate
ReplyDeletecorrect code sorry
Deletepublic int[] tenRun(int[] nums) {
ReplyDeletefor(int i=1;i<nums.length;i++){
if(nums[i]%10!=0 && nums[i-1]%10==0){
nums[i]=nums[i-1];
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeleteboolean f=false;
int z=0;
for(int i=0;i<nums.length-1;i++){
if(nums[i]%10==0 && nums[i+1]%10!=0){
i++;
z=nums[i-1];
f=true;
}
if(f==true){
nums[i]=z;
}
else{
f=false;
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor(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;
}
public int[] tenRun(int[] nums) {
ReplyDeleteint t=0;
boolean found=false;
for(int i=0;i<nums.length;i++){
if(nums[i]%10==0){
t=nums[i];
found=true;
}
else if(found==false)
t=nums[i];
nums[i]=t;
}
return nums;
}
public int[] tenRun(int[] nums)
ReplyDelete{
boolean flag = false;
int last = 0;
for(int i=0;i<nums.length;i++)
{
if(nums[i]%10 == 0)
{
flag = true;
last = nums[i];
}
if(flag)
{
nums[i] = last;
}
}
return nums;
}
public int[] tenRun(int[] nums) {
ReplyDeletefor(int i=1; i<nums.length;i++) {
if(nums[i-1]%10==0 && nums[i]%10!=0) {
nums[i]=nums[i-1];
}
}
return nums;
}