第二题,递归做import java.util.Scanner; /** @author Zhang Han @date 2019/4/7 14:08 /public class SolutionWangyi2 { public static void swap(int[] arr, int i, int j) { int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } public static int[] removeFirst(int[] a) { int[] result = new int[(a.length - 1)]; for (int i = 1; i < a.length; i++) { result[i - 1] = a[i]; } return result; } public static int solve(int[] a, int[] b) { if (a.length == 1) { return a[0] - b[0]; } int result = Integer.MAX_VALUE; for (int j = 0; j < a.length; j++) { swap(a, j, 0); int temp = (j > 0 ? 1 : 0) + Math.abs(a[0] - b[0]) + solve(removeFirst(a), removeFirst(b)); result = Math.min(result, temp); swap(a, j, 0); } return result; } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String s = scanner.next(); String[] value = s.split(","); String origin = value[0]; String target = value[1]; int length = origin.length(); int[] originArr = new int[length]; for (int i = 0; i < length; i++) { originArr[i] = origin.charAt(i) - '0'; } int[] targetArr = new int[length]; for (int i = 0; i < length; i++) { targetArr[i] = target.charAt(i) - '0'; } System.out.println(solve(originArr, targetArr)); }}
点赞 评论

相关推荐

刘湘_passion:太强了牛肉哥有被激励到
点赞 评论 收藏
分享
牛客网
牛客企业服务