題目描述
一輛以固定速度行駛的汽車,司機在上午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<Character> stack=new Stack<Character>();
for(int i=0;i<c.length;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;
}