配列の各要素を他の要素と比較したい。2 つの要素が等しい場合は、一方を 1 に、もう一方を 0 に変更する必要があります。
私は何を間違えましたか?
package org.kodejava.example.io;
import java.util.Arrays;
public class Root {
public static void main(String[] args) {
System.out.println(Arrays.toString(arr()));
}
public static int[] arr() {
int[] arc ={1,2,5,76,8,0,6,5,1,4,8,4,6,};
for (int i=0;i<13;i++){
for (int j=1;j<13;j++){
if (arc[i] == arc[j] ) {
arc[i]=1;
arc[j]=0;
}
else {
arc[i]=1;
}
}
}
return arc;
}
}
この例では、次のような行を取得したいと思います。[1, 1, 1, 1, 1, 1, 1, 0, 0, 1...]
しかし、私の試みは[1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
前もって感謝します!
別の例として、シーケンスがある場合[1,1,4,6]
、最終結果は になります[1,0,1,1]
。したがって、要素が複数回一致する場合、1 つだけが 1 に等しく、他の要素は 0 に等しくなければなりません。