import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String t = sc.next(); t=t.toUpperCase(); boolean flag = false; for(int i = 2;i<17;i++){ String s = getS(n,i); if(s.indexOf(t)!=-1){ flag = true; } } System.out.print(flag==true?"yes":"no"); } public static String getS(int n,int k){ StringBuilder sb = new StringBuilder(); for(int i = 1;i<=n;i++){ if(i<k){ if(i<10){ sb.append(i); }else if(i==10){ sb.append('A'); }else if(i==11){ sb.append('B'); }else if(i==12){ sb.append('C'); }else if(i==13){ sb.append('D'); }else if(i==14){ sb.append('E'); }else if(i==15){ sb.append('F'); } }else{ StringBuilder s = new StringBuilder(); s.append(i%k); int l = i/k; if(k>10){ while(l>0){ int temp = l%k; if(temp<10){ s.append(temp); }else if(temp==10){ s.append('A'); }else if(temp==11){ s.append('B'); }else if(temp==12){ s.append('C'); }else if(temp==13){ s.append('D'); }else if(temp==14){ s.append('E'); }else if(temp==15){ s.append('F'); } l=l/k; } }else{ while(l>0){ int temp = l%k; s.append(temp); l=l/k; } } sb.append(s.reverse().toString()); } } return sb.toString(); } }
}
全部评论
(2) 回帖