A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

package com.heima;
public class Exercise {
        public static void main(String[] args) {
                A: for (int j = 10000; j < 99999; j++) {       
                        for (int i = j, k = 0;; i = get(i), k++) {
                                if (k > 4 && i == get(get(get(get(i))))) {
                                        System.out.println("[" + i + " " + get(i) + " " + get(get(i))
                                                        + " " + get(get(get(i)))+"]");
                               
                                        continue A;
                                }
                        }
                       
                }
        }

        public static int get(int i) {
                int[] arr = new int[5];
                for (int j = i, k = 0; j >= 1; j /= 10, k++) {
                        arr[k] = j % 10;
                }
                int[] a = new int[5];
                for (int j = 0; j < arr.length; j++) {
                        for (int j2 = j + 1; j2 < arr.length; j2++) {
                                if (arr[j2] > arr[j]) {
                                        arr[j2] = arr[j] ^ arr[j2];
                                        arr[j] = arr[j] ^ arr[j2];
                                        arr[j2] = arr[j] ^ arr[j2];
                                }
                        }
                        a[j] = arr[j];
                }
               
                int sum = 0;
                for (int k = 0, g = 10000; k < a.length; k++, g /= 10) {
                        sum += (a[k] - a[4 - k]) * g;
                }
                return sum;
        }
}

2 个回复

倒序浏览
问题:有任意一个5位数,如:34256,把它的各位数字打乱,重新排列,就可得到一个最大的数:65432,还有一个最小的数23456。求这两个数字的差,得:41976,然后把这个数字再次重复上述过程(如果不足5位,则前边补0)。如此往复,数字会落入某个循环圈
- 57 -
(称为数字黑洞)。比如,刚才的数字会落入:[82962, 75933, 63954, 61974] 这个循环圈。 请编写程序,找到5位数所有可能的循环圈,并输出,每个循环圈占1行。其中5位数全都相同则循环圈为 [0],这个可以不考虑。循环圈的输出格式仿照:[82962, 75933, 63954, 61974],其中数字的先后顺序可以不考虑。 5.百鸡问题 问题: 3文钱可以买1只公鸡, 2文钱可以买一只母鸡 1
回复 使用道具 举报
http://bbs.itheima.com/forum.php?mod=attachment&aid=MTExMDQ4fGM3MzNkNmVkYzRiNmUxOWJjZmJlOWMzZThkOWU2ZmY5fDE3NjMzMzAwMDg%3D&request=yes&_f=.png

M2[71~QKHC1_33YGQF)%B(5.png (283.29 KB, 下载次数: 34)

M2[71~QKHC1_33YGQF)%B(5.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马