일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동적 계획법
- db
- Graph
- 프로그래머스
- git
- Data Structure
- java
- 그레이들
- 알고리즘
- 백준
- Algorithm
- 리트코드
- CS
- DP
- Javascript
- 안드로이드
- 자바
- frontend
- Python
- network
- Database
- TypeScript
- 다이나믹 프로그래밍
- LeetCode
- vscode
- Redux
- DFS
- react
- BFS
- VIM
- Today
- Total
목록자바 (5)
늘 겸손하게

made by : besforyou 문제풀이 n을 입력받고, n을 1, 2, 3의 합으로 나타내는 모든 경우를 구할 필요없이 과거 기록을 이용하는 dp 알고리즘을 이용하여 해결하면 편리합니다. - n이 1인 경우 1, 2, 3의 합으로 나타내는 방법 1 : 1가지 - n이 2인 경우 1, 2, 3의 합으로 나타내는 방법 1 1 2 : 2가지 - n이 3인 경우 1, 2, 3의 합으로 나타내는 방법 1 1 1 1 2 2 1 3 : 4가지 - n이 4인 경우 1, 2, 3의 합으로 나타내는 방법 1 1 1 1 1 2 1 2 1 1 3 1 1 1 2 2 2 1 3 : 7가지 n이 4인 경우를 보면 3을 1, 2, 3의 합으로 나타낸 모든 경우 + 1 2을 1, 2, 3의 합으로 나타낸 모든 경우 + 2 1을 ..

Wrote by : besforyou 문제 풀이 1. 입력받기 N, M, 2차원 배열 값을 입력받아 저장합니다. 2. 벽을 세울 수 있는 모든 경우의 수 구하기 빈 칸 (0) 에 벽을 세울 수 있습니다. 벽을 세울 수 있는 모든 경우의 수를 구하여 배열에 저장합니다. 3. 벽을 세운 각 경우의 안전구역 구하기 벽을 세우고, 바이러스가 퍼진 후 안전구역을 구합니다. 4. 최대 안전구역 숫자 구하기 벽을 세울 수 있는 모든 경우 중에서 안전구역이 가장 큰 경우를 구하고 출력합니다. 코드 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..

안녕하세요 besforyou입니다. 2020 카카오 블라인드 채용 > 문자열 압축 문제 풀이입니다. 문제 풀이 조건들이 다양하고, 복잡하고 마지막 원소나 첫 번째 원소 등의 edge case를 다루기가 까다로운 문제였습니다. 일반적인 배열을 이용하여 풀 수도 있겠지만 저는 stack 자료구조를 이용하였습니다. 1. 문자열 단위 정하기 문자열 자르는 단위는 1부터 N/2까지 하면 됩니다. N/2 이상의 길이로 문자열을 잘라봤자 길이가 줄어들지 않으므로 N/2 이상의 단위로는 문자열을 압축할 필요 없습니다. 1 2 3 4 5 6 7 8 9 10 11 public int solution(String s) { int len = s.length(); int min = 1001; for (int i = 1 ; i ..