classSolution{int[][] mem =newint[30][10];publicbooleanreorderedPowerOf2(int N){
mem[0][1]=1;int chengji =1;for(int i =1; i < mem.length;++i){
chengji *=2;
String temp_str = String.valueOf(chengji);for(int j =0; j < temp_str.length();++j){++mem[i][(int)(temp_str.charAt(j)-'0')];}}
String N_str = String.valueOf(N);int[] N_array =newint[10];for(int i =0; i <10;++i){
N_array[i]=0;}for(int i =0; i < N_str.length();++i){++N_array[(int)(N_str.charAt(i)-'0')];}boolean res =false;for(int i =0; i <30;++i){int j =0;for(; j <10;++j){if(N_array[j]!= mem[i][j]){break;}}if(j >=10){
res =true;break;}}return res;}}