1015. Reversible Primes (20)
生词以及在文中意思
prime 素数
1.java十进制转为N进制:
Integer.toString(int i,int radix)//返回的是i的二进制表示,返回类型为String,但是负数不适用。
N进制转为十进制:
Integer.parseInt(String s,int radix)//radix进制的s,转化为十进制,返回类型为int
是不是很方便!!!瞬间感觉用java刷题也挺好用。
2.java反转字符串:String类本身没有反转类,需要包装成Stringbuiler或者是StringBuffer类。
public class test { public static void main(String[] args) { String a="abcde"; StringBuilder b = new StringBuilder(a); System.out.print(b.reverse());//b.reverse还是StringBuilder类,虽然可以直接输出但如果要将其作为String类型参数还需要.toString()
代码如下
import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); int n = sc.nextInt(); while (n >= 0) { int m = sc.nextInt(); boolean IsPrime = true; for (int i = 2; i <= Math.sqrt(n); i++) { if (n % i == 0) { IsPrime = false; } } String s = Integer.toString(n, m); StringBuilder st = new StringBuilder(s); s = st.reverse().toString(); int a = Integer.valueOf(s, m); if (a == 1 || a == 0) { IsPrime = false; } for (int i = 2; i <= Math.sqrt(a); i++) { if (a % i == 0) { IsPrime = false; } } if (IsPrime) { System.out.println("Yes"); } else { System.out.println("No"); } n = sc.nextInt(); } } }
如有改进建议请告知,不胜感激!