From 2150f03842a5c5ba88dca7470dc62dd66dc670cb Mon Sep 17 00:00:00 2001 From: seohs Date: Mon, 16 May 2022 19:31:31 +0900 Subject: [PATCH] init --- .classpath | 10 + .project | 17 + bin/codingTest/Animal.class | Bin 0 -> 489 bytes bin/codingTest/Card.class | Bin 0 -> 356 bytes bin/codingTest/Eatable.class | Bin 0 -> 210 bytes bin/codingTest/Person.class | Bin 0 -> 378 bytes bin/codingTest/Solution$1.class | Bin 0 -> 1389 bytes bin/codingTest/Solution$2.class | Bin 0 -> 1187 bytes bin/codingTest/Solution$3.class | Bin 0 -> 1271 bytes bin/codingTest/Solution$4.class | Bin 0 -> 1741 bytes bin/codingTest/Solution.class | Bin 0 -> 15797 bytes bin/codingTest/module.class | Bin 0 -> 6093 bytes bin/module-info.class | Bin 0 -> 149 bytes src/codingTest/Animal.java | 10 + src/codingTest/Eatable.java | 8 + src/codingTest/Person.java | 12 + src/codingTest/module.java | 857 ++++++++++++++++++++++++++++++++ src/module-info.java | 2 + 18 files changed, 916 insertions(+) create mode 100644 .classpath create mode 100644 .project create mode 100644 bin/codingTest/Animal.class create mode 100644 bin/codingTest/Card.class create mode 100644 bin/codingTest/Eatable.class create mode 100644 bin/codingTest/Person.class create mode 100644 bin/codingTest/Solution$1.class create mode 100644 bin/codingTest/Solution$2.class create mode 100644 bin/codingTest/Solution$3.class create mode 100644 bin/codingTest/Solution$4.class create mode 100644 bin/codingTest/Solution.class create mode 100644 bin/codingTest/module.class create mode 100644 bin/module-info.class create mode 100644 src/codingTest/Animal.java create mode 100644 src/codingTest/Eatable.java create mode 100644 src/codingTest/Person.java create mode 100644 src/codingTest/module.java create mode 100644 src/module-info.java diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..f00af9b --- /dev/null +++ b/.classpath @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..0df9019 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + codingTest + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/bin/codingTest/Animal.class b/bin/codingTest/Animal.class new file mode 100644 index 0000000000000000000000000000000000000000..e39fcc61116a82a78a0d81eb9bba01e997edb641 GIT binary patch literal 489 zcmZXQ&rZTX5XQe@TPURp6#RekV!%Wj^$0OBCZ32MAl$cQgNvn2%HnfrJeYX!0emRq zZmE&TCX=0+o!`ti`}O_t3806g3QB}#lul$a9f^esZW1}?aRnBkG2_oXhST3 z6v1Ao?BbH(5B}bUD${U};Pj(dCQ@A!Sf@KCShwj!IH(cmstUrE2ODKVeIOHYznq66 z8}Tp}re7NIc+4|t;v!k@=iOW|_#PT?bVv0l7lhVeL$RK3DIPx&+MVvEItTj%&lLO` z!5yZ{EE0FpD5$L#KR0_>$674YA4I4c#oA+VP|;>Gz=^)iDf{jlyjSg&ux;WzZ=;@P z46jueOrUQ=*{APl{zq7jc&h@m(AI^(4t5Lptbm!n_o5%xr#WjVD^S8gUUm2bvwu@% literal 0 HcmV?d00001 diff --git a/bin/codingTest/Card.class b/bin/codingTest/Card.class new file mode 100644 index 0000000000000000000000000000000000000000..6d014711faed61ff5e1050b7efc92912dcc6c7f3 GIT binary patch literal 356 zcmZ8d!AiqG6r4?BQ`4wv)VAQoW7~uIfQpxbPzVZIa(0s}bxWE+n)JU^MDXAT_)+4l zdU9dsy`8ti%@1u(YD#nv!A9V2HqGP(gk3DqA#JW^B?IuO0q?$Q>r7p1Bkpagye-s)35|35*nFSG5Hw>4 zV^0*^U6>pmyF1>nSi|WXdegI496lp(9$pYUk+l$-864s%aX{S=eT;BSX7H=T31?=7 MKMwpIPKMa%(FVaIsqdV}i8l+gu&WS`otU^UWvR6&kj*BrGw4E7KEY!3RmV L0F%KBhh6jrsqin$ literal 0 HcmV?d00001 diff --git a/bin/codingTest/Person.class b/bin/codingTest/Person.class new file mode 100644 index 0000000000000000000000000000000000000000..ab2460a1cbb1cf01c376e50d811b97042e32cbda GIT binary patch literal 378 zcmYjNOHRWu6r7i&2~7i~X)nO8MTi`rh)o5ns35iK-btb%7 literal 0 HcmV?d00001 diff --git a/bin/codingTest/Solution$1.class b/bin/codingTest/Solution$1.class new file mode 100644 index 0000000000000000000000000000000000000000..513a042f9811fa45457141a10a5ad4e5e7f22578 GIT binary patch literal 1389 zcma)6TTc@~6#ix@EG>&v?%u0b=#^5$YY~MCQmtT8ATd5I?FdV@JI!85`~^PfyMMwL zO)N$esRGpzk>?zp*%Fg@20 zRy?mF#1K8ykMx|WTl=}Ky+dAgRSYnUx2)u6=8B@;&~4onHp75>U^wx40xSn07RX`A zunc#ZVLB1$k=$hn6-AAQ!7!{r#b5+|7|{?$l%X#n9Y)HA#W%hB9=EskJ(DwxmPJ)J zcXiv4&%QAv$uLX>1&Zg1j9P6`r~9*s@=2N%*Cs6ry_RGtjA@)#aqg5Xl{b#d>l!ZL zA~6)6E7Nbm86x+Buv|jqdcC0HGSTS{wCWjVjoT5#a81S4)6gv{8m=QwbdPk?<6Ey8 zW;*G%t5Qhz@{QmUW~6en#HjO%pJ8%WdL%WZkfze;jRv=B4A~&p9(12}K|*9T%pu1x z=!!NpHAo_mPz-qu3%JP;_Ql^8{~%Y2;1=$vxXmyYpr(eqxJRNiq`;;{ZIdX;=1@dl z_CvSIRBlBqbXD4yuEY7Sm=v7hp@s=eGDIrEv#WgFkgYaU7d6l1b20#BQ8D%{-Suqx zXQ>ybZRr}5PCvgA%S3Nv&8nKhq1JoO-2+imu}+x>jFE;7l!%q%4{Dy&oJ_nb1qjZd zl`MKJD} z(UXF+^gBR4P~Kvc&YC>atuc(#PSwPukMM!eCFag&Ont|tmzl4)a*P}4CK63#q$S<9 zWZIS{=9^gjPtT78+$Ix|G?jPAD(_o_V(p+lAqtQC^rn*}cd$e!CAvZ+ANVA*3~2*81{JzuAc15O zF^n2WVT>V`Q>y8j?OOZo){*5Mh$F{h7^z89IETWs)xIaxR3;3QQBhub#Y<;O4xP=)Cv1tVia}k93enyqs9RqifrMg)!+QOlL$D?eY z>X`d`XJM4RJEL?{m_^P&9tDO(FQo(dAD&$XE|*osE;j`ggv$y|9XjS6LPPaHn9u1} zdj(C_W!p2Y$F?eYswEq3$68c0DU>Nj!-OiB9J-gt$9(Y7j%}2->j9u5YylqGLzC|@3+^2W5BmDp~ z)Oax(1K^pA>O>$jqWX~D8mEzhL8n86)@dK3HC-s4VYpB_L#FT!BX2^*ahl_#2>t~V zgq0DgViH$rWthUX9?dJF86eq8;Vm-7b6nq7phRFpTbR<$ar-5Pi=QxCdXIUI*Haqd zg)Szu7?i6CMZv!!!M|aYf5$ZcLCQZv*Q;Ino@;W1B1&O6D_9`JDZ2s|3DHBN{L6$i sED>u8>=)*B#ONcEWfE~zh(N8YxJRpoH9Vl75U4;bBqfMV8XRkX0QPVe3;+NC literal 0 HcmV?d00001 diff --git a/bin/codingTest/Solution$3.class b/bin/codingTest/Solution$3.class new file mode 100644 index 0000000000000000000000000000000000000000..578bfe7f228669b22b0f02a53b6dc82578ca4d9b GIT binary patch literal 1271 zcmZuxTT|0O6#g~|1lm9=SGiPBtF$RlZlYK$U0lJX1uIled} ziat0#`=cDsrqNbtXHNF)xqj!e{q_6%4*&(c)}b(r*WHHYG*5&dr{lS^#r&lOorANd9L+p~<>41Ap z5iqbad2Cyb6%-k!GCf_&*;59s7SI+c00oChaS>(TvsdQRU4Ls^o;kG1Oj$sz} zbfgGd$G+?YqA5HBbC_ospho$EWYnM@QDuw=Nb7jWFx-i8$b&NjkMNjku0dw{&;DDncC;7`__={8Ow-0x-IiAu2bP>={K9Rt zY_TlU6W*%Tba>G6NV9!AdRua1N4xDJ=tUZLV&AFTu1~W)6v3I>(6Prb+GB?el<||5Z@aQbQOnsLLI$JkIKnI0-1h~Ia^Q%b+#A;qFi$nBM14?_Nx9`fazySp zJyVq^4uiBq#BD(dB?&Wkg<*5{3Q6-TMm~{B!8m>U$q?!kCWx0#KmwDvOD8=uOh;ip zkaZu)O!G66xogZcu5rI8FN@J-Q%hZAVO*onH{=w2BU)nfr;Si$q_r)kzwbMW(VW ig{Y7Iz9hGe7vWjN4xJiy@e=#Q$t{w_%ijT!g55tyX&kfw literal 0 HcmV?d00001 diff --git a/bin/codingTest/Solution$4.class b/bin/codingTest/Solution$4.class new file mode 100644 index 0000000000000000000000000000000000000000..47e733aa06ec2614ef162c660cd1f0c44f10e429 GIT binary patch literal 1741 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 literal 0 HcmV?d00001 diff --git a/bin/module-info.class b/bin/module-info.class new file mode 100644 index 0000000000000000000000000000000000000000..845d9c6614d1e9614c4e81f6c28920d1dd93cd5c GIT binary patch literal 149 zcmX^0Z`VEs1_o;eE_MbcMh5QO{FKt1RNc(Hw0uSeuHgLAqU2P!%$!t41_2}~y{yEt zL`DWSU$AOn26mv@ System.out.println(t)); +// +// int ans = 0; +// ans = s.solution00(new int[] {20,40,65,110}, 30); +// System.out.println(ans); + + // + + + + + //dfs, bfs +// Scanner sc = new Scanner(System.in); +// int n = sc.nextInt(); +// int m = sc.nextInt(); +// int start = sc.nextInt(); +// a = (ArrayList[]) new ArrayList[n+1]; +// for (int i=1; i<=n; i++) { +// a[i] = new ArrayList(); +// } +// for (int i=0; i true); //Stream filter + //Stream filter ó¸® ÈÄ list º¯È¯ + //ArrayList alreadyRankUser = (ArrayList) rankList.stream().filter(t -> t[0].equals(userName) && Integer.parseInt(t[1]) >= userScore).collect(Collectors.toList()); + + //=========================================================== + + + List list = new ArrayList(); + + + list.add(new Integer[][] {{1,3}}); + + //arrayList + List list1 = new ArrayList(); + int index = 0; + list1.add(index, 0); + list1.remove(index); + for (Integer integer : list1) { + System.out.println(integer); + } + + + //=========================================================== + + //map ¼±¾ð + HashMap map = new HashMap(); + + HashMap> ma2 = new HashMap>(); + + //ma2.put("aa", new List); + + for(String key : map.keySet()) { + + } + + //=========================================================== + + //Stack + Stack stack = new Stack(); + stack.add(null); //³Ö±â + stack.empty(); //ºñ¾ú´ÂÁö È®ÀÎ + stack.peek(); //stack ÃÖ»ó´Ü °ª + stack.pop(); //stack »©±â + + //Queue + Queue queue = new LinkedList<>(); + queue.add(null); //³Ö±â + queue.isEmpty(); //ºñ¾ú´ÂÁö È®ÀÎ + queue.peek(); //queue ³ª¿Ã °ª + queue.poll(); //queue »©±â + + + //±âŸ + //int[] ¸¦ integer[]·Î ¹Ù²Ù´Â ¹æ¹ý + Integer[] arr2 = Arrays.stream( arr ).boxed().toArray( Integer[]::new ); + + //forEach ±¸¹® + Arrays.stream(arr).forEach(s -> System.out.println(s)); + + //ÇѱÛÀÚ¾¿ split -- ÆÄ¶ó¹ÌÅÍ ""·Î + String str = "12345"; + String[] result = str.split(""); + + //binarySearch + Arrays.binarySearch(result, "1"); + PriorityQueue q = new PriorityQueue(); + + //Á¤·Ä + /* + String[] result = new String[numbers.length]; + for (int i = 0; i < numbers.length; i++) { + result[i] = String.valueOf(numbers[i]); + } + + // Á¤·Ä + Arrays.sort(result, new Comparator() { + + @Override + public int compare(String o1, String o2) { + + return ((o2 + o1).compareTo(o1 + o2)); + } + }); + */ + + + } + public static boolean isPrime(int num){ + for(int i=2; i<=num/2; i++){ + if(num % i == 0) return false; + } + return true; + } + + + static ArrayList[] a; + static boolean[] c; + public static void dfs(int x) { + if (c[x]) { + return; + } + c[x] = true; + System.out.print(x + " "); + for (int y : a[x]) { + if (c[y] == false) { + dfs(y); + } + } + } + public static void bfs(int start) { + Queue q = new LinkedList(); + q.add(start); + c[start] = true; + while (!q.isEmpty()) { + int x = q.remove(); + System.out.print(x + " "); + for (int y : a[x]) { + if (c[y] == false) { + c[y] = true; + q.add(y); + } + } + } + } + + public boolean BinarySearch(int []arr, int len, int key){ + int start = 0; + int end = len-1; + int mid; + + while(end - start >= 0) { + mid = (start + end) / 2; //Áß¾Ó °ª + + if (arr[mid] == key) { //key°ªÀ» ã¾ÒÀ»¶§ + return true; + + } else if (arr[mid] > key) { //key°ªÀÌ midÀÇ °ªº¸´Ù ÀÛÀ»¶§ (¿ÞÂÊÀ¸·Î) + end = mid - 1; + + } else { //key°ªÀÌ midÀÇ °ªº¸´Ù Ŭ¶§ (¿À¸¥ÂÊÀ¸·Î) + start = mid + 1; + + } + } + return false; + } +} + + + + + + + +class Solution { + + /** + * + * @author hs + * @½ºÅà - ÁÖ½Ä °¡°Ý...... ¾ê Àß ¸ð¸£°Ù´Ù + * + */ + public int[] solution1(int[] prices) { + + Stack stack = new Stack<>(); + int[] ret = new int[prices.length]; + + for (int i = prices.length - 2; i >= 0; i--) { + int day = 0; + + while (!stack.isEmpty() && stack.peek()[0] >= prices[i]) { + day += stack.pop()[1]; + } + + ret[i] = stack.push(new Integer[]{prices[i], day + 1})[1]; + } + + return ret; + } + + public int solution2(int bridge_length, int weight, int[] truck_weights) { + + int answer = 0; + + Queue queue = new LinkedList<>(); + int currentWeight = 0; + + for(int t: truck_weights){ + while(true) { + if(queue.isEmpty()){ + queue.add(t); + currentWeight += t; + answer++; + break; + } else if(queue.size() == bridge_length){ + currentWeight -= queue.poll(); + } else { + if(currentWeight + t > weight){ + queue.add(0); + answer++; + } else { + queue.add(t); + currentWeight+=t; + answer++; + break; + } + } + } + } + answer = answer + bridge_length; + + return answer; + } + + public int solution3(int[] A , int[] B) { + int answer = 0; + + Arrays.sort(A); + Integer[] arr = Arrays.stream( B ).boxed().toArray( Integer[]::new ); + + List list = Arrays.asList(arr); + + Arrays.sort(arr, Collections.reverseOrder()); + for (int i = 0; i < B.length; i++) { + B[i] = arr[i]; + System.out.println(B[i]); + } + + for(int i = 0; i< A.length; i++){ + answer += (A[i] * B[i]); + } + + return answer; + } + + public String solution4(String s) { + + String answer = ""; + + String[] stringArr = s.split(" "); + + int max = Integer.MIN_VALUE; + int min = Integer.MAX_VALUE; + + for(String str: stringArr) { + int num = 0; + + if(str.contains("-")) { + num = (-1) * Integer.parseInt(str.replace("-", "")); + } else { + num = Integer.parseInt(str); + } + + if(num > max) { + max = num; + } + + if(num < min) { + min = num; + } + } + + return answer; + } + + public String[] solution5(String[] record) { + + HashMap uidMap = new HashMap(); + + String[] answer = {}; + String answerStream = ""; + for(String str : record) { + String[] messageContent = str.split(" "); + String postFix = ""; + if(messageContent[0].equals("Leave")){ + postFix = "³ª°¬½À´Ï´Ù."; + } else if(messageContent[0].equals("Change")) { + uidMap.replace(messageContent[1], messageContent[2]); + } else { + postFix = "µé¾î¿Ô½À´Ï´Ù."; + uidMap.put(messageContent[1], messageContent[2]); + } + + if(!messageContent[0].equals("Change")) { + answerStream += messageContent[1]+"´ÔÀÌ "+ postFix + ", "; + } + } + + for( String key : uidMap.keySet() ){ + System.out.println(uidMap.get(key)); + System.out.println(answerStream); + String reg = key.toString(); + answerStream.replaceAll(key, uidMap.get(key)); + } + + answer = answerStream.split(","); + + return answer; + } + + public int[] solution6(int m, int n, int[][] picture) { + int numberOfArea = 0; + int maxSizeOfOneArea = 0; + TreeMap map = new TreeMap<>(); + + int[] answer = new int[2]; + answer[0] = numberOfArea; + answer[1] = maxSizeOfOneArea; + + for(int x = 0; x < m; x++) { + for(int y = 0; y < n; y++) { + + if(picture[x][y] != 0) { + + } + } + } + + + return answer; + } + + public String solution7(String number, int k) { + + String answer = ""; + String[] arr = number.split("\\[0-9]{1}"); + + Arrays.stream(arr).forEach(s -> System.out.println(s)); + + + return answer; + } + + public int solution8(String s) { + int answer = 0; + + HashMap aMap = new HashMap<>(); + String[] str = s.split(""); + + for(int i = 0; i < str.length ; i++) { + if(!aMap.containsKey(str[i])) { + aMap.put(str[i], 0); + } else { + aMap.replace(str[i], aMap.get(str[i]) +1 ); + } + } + + for(String key : aMap.keySet()) { + if(aMap.get(key) % 2 == 1) { + answer++; + } + } + + System.out.println(answer); + return answer; + } + + public String solution9(int n) { + String answer = ""; + String[] str = new String[3]; + int[] b = new int[9999999]; + str[0] = "4"; + str[1] = "1"; + str[2] = "2"; + + int i = 0; + while(n > 0){ + int remainder = n % 3; + n /= 3; + + if(remainder == 0) n--; + + answer += str[remainder] + answer; + } + + return answer; + } + + public int solution10(int n) { + int answer = 0; + + int[] clapChecker = new int [n+1]; + + for(int i = 1 ; i <= n; i++) { + String v = Integer.toString(i); + System.out.println(i+" : " + v.matches(".*[369].*")); + + if(v.matches(".*[369].*")) { + clapChecker[i] = 1; + } else { + clapChecker[i] = 0; + } + } + + answer = Arrays.stream(clapChecker).sum(); + + return answer; + } + + public int solution11(int[] success) { + int answer = Integer.MAX_VALUE; + HashMap map = new HashMap(); + + for(int i = 0; i < success.length; i++) { + if(map.containsKey(Integer.toString(success[i]))) { + int[] org = map.get(Integer.toString(success[i])); + if(org[1] == -1) { + org[1] = i; + map.replace(Integer.toString(success[i]), org); + } + } else { + map.put(Integer.toString(success[i]), new int[] {i,-1}); + } + } + + for (String key : map.keySet()) { + int[] a = map.get(key); + System.out.println(key + " / " + a[0] + ": "+ a[1]); + if(a[1] != -1) { + answer = answer > a[1]-a[0] == true ? a[1] - a[0] : answer; + } + } + + if(answer == Integer.MAX_VALUE) { + answer = -1; + } + + return answer; + } + + public int solution99(int k, String[] user_scores) { + + int answer = 0; + + LinkedList rankList = new LinkedList(); + String[] snapShot = new String[k]; + for(int i = 0; i < k; i++) { + rankList.add(new String[] {" ","0"}); + } + + //K´Â 1ÀÌ»ó 100ÀÌÇÏÀÎ ÀÚ¿¬¼ö + //user_scoresÀÇ ±æÀÌ´Â 1 ÀÌ»ó 1000 ÀÌÇÏ + //user_scores -> ´Ð³×ÀÓ Á¡¼ö + //¹Ù²ï´Ù -> ´Ð³×ÀÓ + int z = 0; + for(String s : user_scores) { + //·©Å© Á¤º¸ º¯°æ Àü ½º³À¼¦ + for(int i = 0; i < k; i++) { + String[] rankUser = rankList.get(i); + snapShot[i] = rankUser[0].toString(); + } + + //ÀоîµéÀÎ À¯Àú Á¤º¸ ½ºÄµ + String[] user = s.split(" "); + String userName = user[0]; + int userScore = Integer.parseInt(user[1]); + + if(rankList.size() == 0) { + rankList.add(user); + } else { + for(int i = 0; i < k; i++) { + String[] rankUser = rankList.get(i); + int rankUserScore = Integer.parseInt(rankUser[1]); + + if(rankUserScore < userScore) { + + //·©Å©¿¡ ÀÌ¹Ì ÀÖ´Â °æ¿ì -> ±¸ ·©Å©¸¦ Áö¿öÁØ´Ù. + boolean needRemove = false; + int removeIndex = -1; + for(int j = 0; j < k; j++) { + String[] tmpUser = rankList.get(j); + int tmpRankUserScore = Integer.parseInt(tmpUser[1]); + + + if(tmpUser[0].equals(userName) && tmpRankUserScore < userScore) { + needRemove = true; + removeIndex = j; + break; + } + } + + if(needRemove) { + //System.out.println("needRemove" + removeIndex); + rankList.remove(removeIndex); + rankList.add(i, user); + } else { + ArrayList alreadyRankUser = (ArrayList) rankList.stream().filter(t -> t[0].equals(userName) && Integer.parseInt(t[1]) >= userScore).collect(Collectors.toList()); + + //alreadyRankUser.forEach((t) -> {System.out.println(t[0]);}); + if(alreadyRankUser.size() == 0) { + rankList.add(i, user); + } + } + //rankList.remove(k); + break; + } + } + + } + + //·©Å© Á¤º¸ º¯°æ Àü ½º³À¼¦ + for(int i = 0; i < k; i++) { + String[] rankUser = rankList.get(i); + if(!snapShot[i].equals(rankUser[0].toString())) { + answer++; + break; + } + } +// System.out.println("========================= i : " + z++); +// rankList.forEach((t) -> { +// System.out.println(t[0] + "/ "+ t[1]); +// }); +// +// +// System.out.println("========================="); +// + } + + return answer; + } + + //Á¤·Ä + public String solution13(int[] numbers) { + + // ¼ýÀÚ¸¦ ¹®ÀÚ¿­·Î º¯È¯ + String[] result = new String[numbers.length]; + for (int i = 0; i < numbers.length; i++) { + result[i] = String.valueOf(numbers[i]); + } + + // Á¤·Ä + Arrays.sort(result, new Comparator() { + + @Override + public int compare(String o1, String o2) { + System.out.println((o2 + o1).compareTo(o1 + o2)); + return ((o2 + o1).compareTo(o1 + o2)); + } + }); + + // 0¸¸ ¿©·¯°³ ÀÖ´Â ¹è¿­ÀÇ °æ¿ì ÇϳªÀÇ 0¸¸ ¸®ÅÏ + if(result[0].equals("0")) { + return "0"; + } + + String answer = ""; + // Á¤·ÄµÈ ¹®ÀÚ Çϳª·Î ÇÕÄ¡±â + for (String a : result) { + answer += a; + } + return answer; + + } + + public int solution14(int[] people, int limit) { + + //±¸¸íº¸Æ® ¾ÕµÚ·Î Å¿ì±â ----- Ž¿å¹ý + int answer = 0; + + Arrays.sort(people); + + int right = people.length - 1; + int left = 0; + + while (right >= left) { + int weight = people[right--]; + if (weight + people[left] <= limit) { + left++; + } + answer++; + } + + return answer; + } + + public int solution15(String name) { + int answer = 0; + String[] arr = name.split(""); + int[] resetStack = {1,2,3,4,5,6,7,8,9,10,11,12,13,13,12,11,10,9,8,7,6,5,4,3,2,1}; + int currentPoint = 0; + + for(int i = 0; i < arr.length ; i++) { + int targetPoint = arr[i].codePointAt(0)-65; + System.out.println("move To :" + arr[i]); + System.out.println(Math.abs(targetPoint-currentPoint)); + System.out.println(resetStack[targetPoint]); + answer += Math.min(Math.abs(targetPoint-currentPoint), resetStack[targetPoint]); + if(i != arr.length-1) { + answer++; + } + } + + return answer; + } + + + public String[] solution(String[] movie) { + + String[] ans = {}; + HashMap map = new HashMap(); + + for (String m : movie) { + if(map.containsKey(m)) { + Integer orgCount = map.get(m); + map.replace(m, orgCount+1); + } else { + map.put(m, 1); + } + } + + List tmpList = new ArrayList(); + + tmpList.addAll(map.keySet()); + + Collections.sort(tmpList,new Comparator() { + public int compare(Object o1,Object o2) { + Object v1 = map.get(o1); + Object v2 = map.get(o2); + + if(v1.equals(v2)) { + return ((Comparable) o1).compareTo(o2); + } + + return ((Comparable) v2).compareTo(v1); + } + }); + + ans = tmpList.toArray(new String[0]); + + return ans; + } + + public int solution00(int[] user_times, int T) { + int answer = 0 ; + + for (int time : user_times) { + + int multiple = (int) Math.ceil((float)time/T); + int remainTime = multiple * T - time; + answer = Math.max(answer, remainTime); + } + + return answer; + } + + + public String[] solution01(String[] rooms, int target) { + + String[] answer = {}; + + HashMap> roomMap = new HashMap>(); + HashMap> humanMap = new HashMap>(); + + for( String s : rooms) { + + String roomNum = s.substring(s.indexOf("[")+1,s.indexOf("]")); + String[] nameList = s.substring(s.indexOf("]")+1).split(","); + + //System.out.println(roomNum); + //Arrays.stream(nameList).forEach(t -> System.out.println(t)); + + roomMap.put(roomNum, new ArrayList(Arrays.asList(nameList))); + + for(String h : nameList) { + ArrayList list = humanMap.getOrDefault(h, new ArrayList()); + list.add(roomNum); + humanMap.put(h, list); + } + + } + + HashMap> resultMap = new HashMap>(); + + + //¿ì¼± ¼øÀ§ °í·Á + //1. È£¼ö filtering + int min = 99999; + PriorityQueue pq = new PriorityQueue(new Comparator() { + @Override + public int compare(String o1, String o2) { + int a = Math.abs(target - Integer.parseInt(o1)); + int b = Math.abs(target - Integer.parseInt(o2)); + + return ((Comparable) a).compareTo(b); + } + }); + + for( String s : roomMap.keySet()) { + if(Math.abs(target - Integer.parseInt(s)) != 0) { + pq.add(s); + } + } + + PriorityQueue> pqh = new PriorityQueue>(new Comparator>() { + + @Override + public int compare(HashMap o1, HashMap o2) { + + int size1 = Integer.parseInt(o1.get("size")); + int size2 = Integer.parseInt(o2.get("size")); + String name1 = o1.get("name"); + String name2 = o2.get("name"); + + + if(size1 != size2) { + return ((Comparable) size1).compareTo(size2); + } else { + return ((Comparable) name1).compareTo(name2); + } + + } + + }); + + + for( String s : humanMap.keySet()) { + + if(humanMap.get(s).contains(String.valueOf(target))) { + } else { + HashMap tmp = new HashMap(); + tmp.put("name", s); + tmp.put("size", String.valueOf(humanMap.get(s).size())); + pqh.add(tmp); + } + } + + answer = new String[pqh.size()]; + + int i = 0; + + for (HashMap hashMap : pqh) { + answer[i++] = (hashMap.get("name")); + } + + + Arrays.stream(answer).forEach(t -> System.out.println(t)); + + return answer; + } +} + + diff --git a/src/module-info.java b/src/module-info.java new file mode 100644 index 0000000..62dc43e --- /dev/null +++ b/src/module-info.java @@ -0,0 +1,2 @@ +module codingTest { +} \ No newline at end of file