일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- react
- background: url
- react hook
- background setInterval
- React 18
- hook
- react-helmet
- React 고급안내서
- codingtest
- RTK Query
- React 고급 안내서
- React18
- background tab
- next13 head
- context
- notFound()
- Nextjs
- React API 참고서
- getUTCDate
- Programmers
- React 공식문서
- React 18 Nextjs
- Javascript
- 고급안내서
- Next13
- Babel
- Nextjs React 18
- CSS
- Render Props
- background setttimeout
- Today
- Total
목록알고리즘/programmers (32)
akjfal
// num stack is order // 1. num[100,000] // 2. answer.length = substring(2, n-2) and remove },{ // 3. num[charAt(index)]++ // 4. answer = [n, n-1 ...] import java.util.HashMap; import java.util.Iterator; class Solution { public int[] solution(String s) { int[] num = new int[100001]; s = s.substring(2, s.length()-2); String[] ansLength = s.split("\\}"); int[] answer = new int[ansLength.length]; i..
// 1. arraylist[num] // 2. arraylist[cal] // 3. 6번 진행 // 4. cal first -> a[0] = a[0] + a[1] // 4.1 연산한 수에는 none을 넣어 연산이 완료되었음을 입력 // 4.2 num.size는 cal.size+1이고 cal[index] 연산시 num[cal.index+1]은 반드시 숫자임 // 5. num[cal.index+1]과 none이 아닌 수를 앞에서 while을 통해 찾아 연산 import java.util.ArrayList; class Solution { static boolean[] calculate = new boolean[3]; // + - * static ArrayList numList; static ArrayList..
// 1. String을 ArrayList로 전환하기 // 2. Index를 이동하며 Stack에 쌓기 // 3. Stack에 쌓인 데이터를 체크하기 import java.util.Stack; import java.util.ArrayList; import java.util.Arrays; class Solution { public int solution(String s) { int answer = 0; ArrayList list = new ArrayList(Arrays.asList(s.split(""))); for(int i = 0; i < list.size(); i++){ Stack stack = new Stack(); int index = i; for(int j = 0; j < list.size(); ..
// 부전승은 x // A와 B를 포함한 가장 작은 2^n이 무엇인가?를 구해야한다. // 어차피 2^n의 전 아니면 후다(위에서부터 내려왔을때) // 맨 처음으로 달라지는 구간의 n값이다. // n - 1 // 1. 2^n-1 과 A B비교 // 2. 같은 구간에 있다면 n-1 // 2-1. 둘다 2^n보다 크다면 a,b 둘다 -2^n // 3. 다른 구간에 있다면 n+1값은 정답 class Solution { public int solution(int n, int a, int b) { int answer = 1; n -= 1; while(n >= 0){ boolean isA = Math.pow(2, n) < a; boolean isB = Math.pow(2, n) < b; if(isA == isB){..
// 1 = m || map[y][x] == 0){ return false; } return true; } } BFS 기본문제다.
Programmers 코딩테스트 level 2 - 42583번 다리를 지나는 트럭 java로 작성했습니다. 생각한 점 1. 다리에 현재 올라와있는 queue와 트럭이 대기중인 queue사용 2. 틱마다 다리에 트럭이 올라갈수있는지 없는지 체크해 대기중인 queue의 길이만큼 for문을 돌림 static public int solution(int bridge_length, int weight, int[] truck_weights) { int answer = 0; int line_weight = 0; int length = truck_weights.length; Integer[] tmp_bridge = new Integer[bridge_length]; Arrays.fill(tmp_bridge, 0); // ..
Programmers 코딩테스트 level 2 - 68645번 삼각달팽이 java로 작성했습니다. 생각한 점 코드를 작성할때 2차원 배열을 그린다고하면 좌표처럼 생각해 x변수는 넓이, y변수는 높이를 나타냅니다. 피라미드를 한쪽으로 몰았을 때 직각 삼각형과 같은 모양을 지니고 있어 2차원 배열의 절반과 가운데줄을 사용한것과 같은 배열을 보인다 1부터 진행시 n -> n -1 -> ... 1로 진행되어 전체 수를 n * (n - 1) / 2로 계산했다. 코딩 방식 1부터 n번 1자로 내려가면서 채우기 배열의 끝(처음에만 적용)이나 0이 아닌 숫자를 만나면 멈춤 ㅡ자로 n-1번 채우기 배열의 끝(처음에만 적용)이나 0이 아닌 숫자를 만나면 멈춤 대각선 방향으로 n-2번 채우기 0이 아닌 숫자를 만나면 멈춤(..
Programmers 코딩테스트 level 2 - 1829번 카카오프렌즈 컬러링북도움말 java로 작성했습니다. 생각한 점 1. 코드를 작성할대 2차원 배열을 그린다고하면 좌표처럼 생각해 x변수는 넓이, y변수는 높이를 나타냅니다. 2. bfs를 사용했습니다. import java.util.*; class Solution { static int max; static int ans_num; static Queue q; static class Node { public T x; public T y; public Node(T y, T x) { this.x = x; this.y = y; } } public int[] solution(int m, int n, int[][] picture) { // m : heigh..