Java实现-落单的数2

来源:互联网 发布:力学软件 编辑:程序博客网 时间:2024/06/06 18:00


public class Solution {/** * @param A : An integer array * @return : An integer  */    public int singleNumberII(int[] A) {        // write your code here        if(A.length==0){return 0;}int result[]=new int[20];for(int i=0;i<A.length;i++){toThree(A[i], result);}for(int i=0;i<result.length;i++){result[i]%=3;}int lastOne=0;for(int i=0;i<result.length;i++){lastOne+=result[i]*Math.pow(3,result.length-i-1 );}return lastOne;    }    private static void toThree(int x,int []result){int n=0;while(Math.pow(3, n)<=x){n++;}n--;while(n>=0){result[result.length-n-1]+=x/(int)Math.pow(3, n);x=x%(int)Math.pow(3, n);n--;}}}


原创粉丝点击