对数计数器 | |
描述: | 小明在使用一个计数器,计数范围0~999999,小明第一次看计数器的时候,其读数为一个对数(即正反读是一样的,如12321),当出现下一个对数的时候,小明停止了计数。 |
运行时间限制: | 无限制 |
内存限制: | 无限制 |
输入: | 输入一个整数0~999999 |
输出: | 输出计数数量,非负整数 |
样例输入: | 123321 |
样例输出: | 1100 |
直接计算
import java.util.*;public class Main{public static void main(String[] args){Scanner in = new Scanner(System.in);while(in.hasNext()){int x = in.nextInt();int count = getCount(x);System.out.println(count);}in.close();}public static int getCount(int num){int count = 0;while(num<=999999){num++;if(num==1000000){num=0;count++;break;}if(!isPail(num)){count++;}else{count++;break;}}return count;}public static boolean isPail(int num){if(num<=9)return true;int p = 1;int x = num;while(x>9){x/=10;p*=10;}while(num>=10){int l = num/p;int r = num%10;if(l!=r)return false;num%=p;// 去除第一位数num/=10;// 去除最好一位数p=p/100;}return true;} }
这个应该可以找出来规律的