This was the problem. You are given an array (which will have a length of at least 3 but could be very large) containing integers. The array is either entirely comprised of odd integers or entirely comprised of even integers except for a single integer N. Write a function that takes the array as an argument and returns this “outlier” N. and I wrote the following code.. still, it didn't work public class Outlier { public static void main(String[] args) { int[] x = new int [args.length]; for(int i=0; i even) { if (x[i] % 2 == 0) { N = x[i]; for (int j = 0; j odd ) { if (x[i] % 2 == 1) { N = x[i]; for (int j = 0; j
I saw a problem in StackOverflow. I tried to solve it differently but wasn't able to solve it.
This was the problem.
You are given an array (which will have a length of at least 3 but could be very large) containing integers. The array is either entirely comprised of odd integers or entirely comprised of even integers except for a single integer N. Write a function that takes the array as an argument and returns this “outlier” N.
and I wrote the following code.. still, it didn't work
public class Outlier
{
public static void main(String[] args)
{
int[] x = new int [args.length];
for(int i=0; i<x.length; i++) {
x[i] = Integer.parseInt(args[i]);
}
System.out.print(unique(x)); }
public static int[] unique(int[] x) {
int even = 0;
int odd = 0;
int N = 0;
int[] a = new int [x.length];
for (int i = 0; i < x.length; i++) {
if (x[i] % 2 ==0) {
even ++;
}
else odd ++;
}
for (int i = 0; i < x.length; i++) {
if (odd > even) {
if (x[i] % 2 == 0) {
N = x[i];
for (int j = 0; j<even; j++) a[j]=N;
}
}
else if (even > odd ) {
if (x[i] % 2 == 1) {
N = x[i];
for (int j = 0; j<odd; j++) a[j]=N;
}
}
}
return a;
}
}
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 1 images