题目描述
一辆以固定速度行驶的汽车,司机在上午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;}
少一点预设的期待,那份对人的关怀会更自在