전체 글

하.. map에 부분집합 저장할 때 누적이 안되고 자꾸 1로 갱신된다.. getOrDefault 썼는데도 이러네 이유 찾았다 또 스펠링임 이거 프로그래머스 ide가 이상한게 컴파일 에러를 제대로 못찾는 것 같음 Line:60~61번 subsetMap.put(subset, subsetMap.getOrDefault(subsetMap, 0)+1); -> subsetMap.put(subset, subsetMap.getOrDefault(subset, 0)+1); 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 5..
System.out.println(str1); System.out.println(str1.matches("^[A-Z]*$")); // 출력 FRANCE true AA1+AA2 false E=M*C^2 false​
문제에서 하라는대로 하면 되긴 하는데 좀 그냥 헷갈림..ㅠ 마지막 부분 UInfo Class에서 생성자에서 parameter를 isMatched가 아니라 isMached로 잘못써서 자꾸 false값만 나오길래 곤경에 빠졌었다.. this.isMatched = isMatched가 this.isMatched = this.isMatched가 된듯.. 그러니 boolean기본값인 false만 계속 박혔었던 것 같다 class Solution { public String solution(String p) { return divideUV(new StringBuilder(p)).toString(); } private StringBuilder divideUV(StringBuilder sb){ if(sb.length()..
1. orders배열의 order들을 toCharArray()로 char[]로 변환 후 Arrays.sort(char[]) 후에 String.valueOf(char[])로 알파벳 순으로 정렬된 주문 요리순서로 바꿈 (이거 안해주면 나중에 map으로 누적시킬 때 "XY" "YX" 이런 요리 조합이 따로 누적됨) 2. comb 메서드는 계속 하면 indexOutOfRange뜨다가 결국 완성함 3. combOrder 메소드의 마지막 parameter인 int PreIdx가 핵심이었는데 이걸 안해주면 XYZ의 조합에서 ZZZ AB 조합에서 BB 이런 것이 나옴 4. mostOrderNum int[]을 통해 n개 조합의 최다 주문된 횟수를 mostOrderNum[n]에 Math.max를 통해 계속 갱신시켜줄것 i..
규칙 찾으면 끝 N세대의 드래곤 커브는 N-1세대커브의 역순의 막대기들을 뽑아서 그리는데 화살표 방향이 index를 +1한 방향으로 수정한 후에 그리면 된다 드래곤 커브를 세대별로 전부 모아서 그려도 되고 나같은 경우는 그냥 1세대씩 그리고 모으고 그리고 모으고 했음 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import ja..
구현인데 행렬회전이 안 익숙해서 좀 오래 걸리기도하고 무수히 많은 indexOutOfRange랑 악수했다 이거 matrix문제 풀 때는 2차원 배열 표시할 때 (x,y)로 하지 말고 (r,c)으로 해야 안 헷갈리는 것 같다 (x,y)로 하면 arr[y][x]로 해야되서 더 헷갈려짐..ㅠㅠ 나중에는 종이에 그림에 미리 그려놓은 다음에 index부분에서는 exception안나게 해야겠다.. 맨날터지네 index관련한건 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58..
1234567891011121314151617181920import java.util.*; class Solution{ public int solution(String s) { Stack st = new Stack(); for(int i=0; i
12345678910111213141516171819class Solution { public int solution(int[] numbers, int target) { return DFS(numbers, target, 0, 0); } public int DFS(int[] numbers, int target, int preOrder, int total){ if(preOrder == numbers.length){ // System.out.println(preOrder+" "+total); if(total==target) return 1; else return 0; } return DFS(numbers, target, preOrder+1, total+numbers[preOrder])+ DFS(numbers,..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 import java.util.*; class Solution { public int[] solution(int[] progresses, int[] speeds) { List list = new ArrayList(); int i = 0; while(iinteger.intValue()).toArray(); int[] answer = listToArray(list); return answer; } public int requiredDays(int progress, int speed){ ..
요약 Ajax를 사용하는 첫번째 이유 : 고객이 사용하는 클라이언트는 크게 2가지로 웹과 앱이 있으며, 일반적으로 서버로 부터 응답받을때 웹은 HTML파일을 받고 앱은 데이터(JSON)를 받는다. 이것은 서버를 이원화하여 구축한 것을 의미하며 이때 '서버를 통합하여 각각의 클라이언트에게 응답해줄순 없을까?'라는 의문점에서 고안된 방법이 Ajax통신이다. Ajax통신을 사용하면 웹은 서버로부터 데이터(JSON)를 리턴받을 수 있으며 그렇게 되면 서버의 분리 필요없이 하나의 서버로 각각의 클라이언트 요청을 받아 응답해줄수 있게된다. 대신 웹클라이언트는 추가적인 요청을 통해 HTML파일을 받아야한다. 두번째 이유 : 비동기 통신을 하기 위하여
배게
백엔드