中级农民
- 积分
- 155
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2014-4-17
- 最后登录
- 1970-1-1
|
写了下第一题
- public class PalindromeNumbers {
- public static int getPalindromeNumbers(int num) {
- int len = String.valueOf(num).length();
- int count = len / 2;
- int half = num / (int) Math.pow(10, count);
- int res = half;
- if (len % 2 == 1) {
- half = half / 10;
- }
- while (half > 0) {
- res = res * 10 + half % 10;
- half = half / 10;
- }
- System.out.println("* " + res);
- return res;
- }
- public static int getClosestInteger(int num) {
- int len = String.valueOf(num).length();
- int count = len / 2;
- int ans = getPalindromeNumbers(num);
- int min = Math.abs(num - ans);
- int tmp = getPalindromeNumbers(num - 1 * (int)Math.pow(10, count));
- if (Math.abs(num - tmp) < min) {
- min = Math.abs(num - tmp);
- ans = tmp;
- }
- tmp = getPalindromeNumbers(num + 1 * (int)Math.pow(10, count));
- if (Math.abs(num - tmp) < min) {
- min = Math.abs(num - tmp);
- ans = tmp;
- }
- return ans;
- }
- public static void main(String[] args) {
- System.out.println(getPalindromeNumbers(12333));
- System.out.println(getPalindromeNumbers(123333));
- System.out.println(getClosestInteger(10000));
- System.out.println(getClosestInteger(1000));
- }
- }
复制代码 |
|