计挑-21-编程1
从大于等于N的正整数里找到一个最小的数M,使之满足:M和M的逆序数(如1230的逆序数为321)的差的绝对值为一个[100000,200000]区间内的值。
输入说明:起始数字N;
输出说明:找到的第一个符合条件的数,如果没有符合条件的数,输出F。
输入样例:123456
输出样例:123462
public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer stringTokenizer = new StringTokenizer(br.readLine()); int n = Integer.parseInt(stringTokenizer.nextToken()); for(int i=n;i<Integer.MAX_VALUE;i++){ int temp = Math.abs(i-reverseInt(i)); System.out.println(i+"->"+temp); if(temp>=100000&&temp<=200000){ System.out.println(i); return; } } System.out.println('F'); } /** * 反转一个整数 */ public static int reverseInt(int n){ int res = 0; while (n != 0) { // 这里的控制简单粗暴 if (res > Integer.MAX_VALUE / 10 || res <Integer.MIN_VALUE / 10) return 0; res = res * 10 + n%10; n /= 10; } return res; }
本文作者:YaosGHC
本文链接:https://www.cnblogs.com/yaocy/p/16916813.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步