题目描述
一辆以固定速度行驶的汽车,司机在上午10点看到里程表(里程表有6位)上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的,例如95859公里)
两小时后里程表上出现了一个新的对称数。问该车的速度(公里/小时)是多少?
输入
当前里程数(为对称数)(值≤ 999999)
输出
汽车速度(公里/小时),-1:汽车速度计算失败,在里程表的范围内找不到下一个对称数
样例输入
95859
样例输出
50
提示
地区
南京研究所
产品线
公共
阶段
招聘
难度
2级
public int getCarSpeed(int input){
int output=input+1;
while(output>input){
String in=String.valueOf(output);
char[] c=in.toCharArray();
Stack stack=new Stack();
for(int i=0;i
stack.push(c[i]);
}
StringBuilder sb=new StringBuilder();
while(!stack.isEmpty()){
sb.append(stack.pop());
}
if(in.equals(sb.toString())){
break;
}else{
if(output==999999)
return -1;
output++;
}
}
int speed=(output-input)/2;
return speed;
}