From ed7d71e58d53318736356cf0c761370bc6f6d520 Mon Sep 17 00:00:00 2001 From: Cool <747682928@qq.com> Date: Sun, 6 Oct 2024 11:28:40 +0800 Subject: [PATCH] =?UTF-8?q?2024/10/06=20418=E5=91=A8=E8=B5=9B=20Q2?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/cool/week_match/week418/Q1.java | 52 ++++++++++++++++++ .../java/com/cool/week_match/week418/Q2.java | 53 +++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 src/main/java/com/cool/week_match/week418/Q1.java create mode 100644 src/main/java/com/cool/week_match/week418/Q2.java diff --git a/src/main/java/com/cool/week_match/week418/Q1.java b/src/main/java/com/cool/week_match/week418/Q1.java new file mode 100644 index 0000000..b7a2fe4 --- /dev/null +++ b/src/main/java/com/cool/week_match/week418/Q1.java @@ -0,0 +1,52 @@ +package com.cool.week_match.week418; + +/** + * Created with IntelliJ IDEA. + * + * @Author: Cool + * @Date: 2024/10/06/10:36 + * @Description: + */ +public class Q1 { + + public int maxGoodNumber(int[] nums) { + String[] strs = new String[6]; + strs[0] = transToTwo(nums[0]) + transToTwo(nums[1]) + transToTwo(nums[2]); + strs[1] = transToTwo(nums[0]) + transToTwo(nums[2]) + transToTwo(nums[1]); + strs[2] = transToTwo(nums[1]) + transToTwo(nums[2]) + transToTwo(nums[0]); + strs[3] = transToTwo(nums[1]) + transToTwo(nums[0]) + transToTwo(nums[2]); + strs[4] = transToTwo(nums[2]) + transToTwo(nums[1]) + transToTwo(nums[0]); + strs[5] = transToTwo(nums[2]) + transToTwo(nums[0]) + transToTwo(nums[1]); + int max=0; + for(String str:strs){ + max=Math.max(max,transToTen(str)); + } + return max; + } + + private String transToTwo(int num) { + if (num == 0) { + return "0"; + } + StringBuilder builder = new StringBuilder(); + while (num != 0) { + int number = num % 2; + builder.append(number); + num = num / 2; + } + builder.reverse(); + return builder.toString(); + } + + private int transToTen(String str) { + char[] chars = str.toCharArray(); + int multiple = 1; + int res = 0; + for (int i = chars.length - 1; i >= 0; i--) { + res += (chars[i] - '0') * multiple; + multiple *= 2; + } + return res; + } + +} diff --git a/src/main/java/com/cool/week_match/week418/Q2.java b/src/main/java/com/cool/week_match/week418/Q2.java new file mode 100644 index 0000000..6ea4224 --- /dev/null +++ b/src/main/java/com/cool/week_match/week418/Q2.java @@ -0,0 +1,53 @@ +package com.cool.week_match.week418; + +import org.junit.Test; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Created with IntelliJ IDEA. + * + * @Author: Cool + * @Date: 2024/10/06/11:13 + * @Description: + */ +public class Q2 { + + public List remainingMethods(int n, int k, int[][] invocations) { + List list = new ArrayList<>(); + Map> map = new HashMap<>(); + for (int[] methods : invocations) { + List list1; + if(!map.containsKey(methods[0])){ + list1 = new ArrayList<>(); + }else{ + list1 = map.get(methods[0]); + } + list1.add(methods[1]); + map.put(methods[0], list1); + } + if (!map.containsKey(k)) { + for (int i = 0; i < n; i++) { + if (i != k) { + list.add(i); + } + } + return list; + } + return null; + } + private void dfs(Map> map,int k,int[][]invocations,int cur){ + + } + @Test + public void test(){ + int n=5; + int k=0; + int[][]invocations=new int[][]{ + {1,2},{0,2},{0,1},{3,4} + }; + } +}