public class Main { public static void main(String[] args) { int[] startDigit = new int[4]; int[] productDigit = new int[4]; // 可以判断: 两个数只有两位数字,num1和num2代表这两个数 for (int num1 = 10; num1 <= 99; num1++) { for (int num2 = num1; num2 <= 99; num2++) { // 得到num1和num2两个数的乘积 int product = num1 * num2; // 将num1和num2的个位十位进行分离,存储到startDigit[]数组中 startDigit[0] = num1 / 10; startDigit[1] = num1 % 10; startDigit[2] = num2 / 10; startDigit[3] = num2 % 10; // 将得到的乘积四位数进行分割得到四个数组,并存放到productDigit[]数组中 productDigit[0] = product / 1000; productDigit[1] = product % 1000 / 100; productDigit[2] = product % 1000 % 100 / 10; productDigit[3] = product % 1000 % 100 % 10; int count = 0; // 使用循环来比较两个数组中的数字是否相同 for (int x = 0; x < 4; x++) { for (int y = 0; y < 4; y++) { if (productDigit[x] == startDigit[y]) { count++; productDigit[x] = -1; startDigit[y] = -2; if (count == 4) { System.out.println(num1 + " * " + num2 + " : " + product); } } } } } } } }
Java 实现四位数的吸血鬼算法
最新推荐文章于 2021-03-10 08:28:21 发布