문제 요약알고리즘 분류: 그리디난이도: Medium문제내용:2차원 배열 points, points[i] = [xi, yi] 와 정수 w가 주어진다. w는 사각형 가로 길이이다.사각형의 범위가 (x`, 0) , (x` + w, 0), (x`, y`), (x` + 2, y`)로 이루어 진게 몇개가 있습니다.각 points 사각형안에 포함이 되어 있습니다. 모든 점이 사각형 안에 포함 될때 최소 몇 개 사형이 필요한지 반환 하세요.사이트 주소: https://leetcode.com/problems/minimum-rectangles-to-cover-points/description/문제풀이 이번 문제는 모든 경우의 수로 구하면 시간초과가 날것이다. 그래서 최적의 시간내로 풀수 있는 그리디로 풀어야 통과가 되는..
문제 요약알고리즘 분류: 기하학난이도: Medium문제내용:[x, y]로 점으로 구성된 points와 [x, y, r]로 원으로 구성된 queries가 주어진다. queries로 주어진 [x, y, r]은 x, y 위치를 의미하고 r은 원의 반지름을 의미한다. 각 query 원 안에서 points 점들이 몇개 포함되는지 반환 하는 함수를 만들어라.사이트 주소: https://leetcode.com/problems/queries-on-number-of-points-inside-a-circle/description/문제풀이 이번 문제는 기하학 문제이고 원에 대한 개념만 알면 문제 풀기가 쉽다. 원은 중심점과 반지름 r로 이루어 져 있다. 원안에 각 point가 포함되어 있는지 여부는 원 중심점과 point..
문제 요약알고리즘 분류: Hash, list난이도: Medium문제내용:groupSizes라는 정수 배열이 주어지는데, 여기서 groupSizes[i]는 사람 i가 속한 그룹의 크기이다.그룹은 groupSize 크기 만큼 그룹에 속해야 한다.각 사람이 groupSizes[i]의 크기를 가진 그룹에 속하는 그룹의 목록을 반환해라사이트 주소: https://leetcode.com/problems/group-the-people-given-the-group-size-they-belong-to/description/문제풀이 이번 문제는 Hash와 리스트를 활용 하면되는 간단한 문제 이다. 구현은 아래와 같이 하면된다.결과에 담을 2차원 리스트와 Hash에 저장할 변수를 선언한다. Hash의 key-value는 ..
문제 요약알고리즘 분류: 수학난이도: Medium문제내용:숫자 n이 주어지면 2 ~ n-2 진법까지 변환한다.집법으로 변환 한 것에서 뒤집은 숫자와 다른 것 하나라도 있으면 false로 반환 한다. 사이트 주소: https://leetcode.com/problems/strictly-palindromic-number/description/문제풀이 이번 문제는 Palindromic Number 문제이다. 근데 여기서 진법으로 변환해서 뒤집은 숫자와 다른지 파악하면 된다.여기서 구현 해야 할것은 n진법 변환 작업이다. 자바는 n진법 변환 하는 함수 제공하는데 파이썬은 직접 구현 해야한다.파이썬 진법 구현은 아래와 같이 하면된다.# 진법 변환def baseN(num: int, base) -> int: p..
문제 요약알고리즘 분류: DP난이도: Medium문제내용:가로, 세로 안에 0 과 1로 채워져 있다. 0은 빈곳 1은 면적이 있는 공간이다.정사각형 최대 넓이를 구하여라사이트 주소: https://leetcode.com/problems/maximal-square/description/문제풀이 이번 문제는 간단한 DP(동적계획법) 문제이다. DP에 대한 자세한 설명은 아래글에서 확인 해보면 된다.https://jih3508.tistory.com/89 [알고리즘 이론] 동적계획법(Dynamic Programming, DP)이론 이번에 볼 알고리즘은 동적계획법(Dynamic Programming)이다. 이 알고리즘은 줄어서 dp라고 많이 불리고 코딩테스트에도 자주 나오는 유형이라서 무조건 알아야 되는 알고즘..
문제 요약 알고리즘 분류: DFS, 백트래킹, Tree, Hash 난이도: Medium 문제내용: 이진 트리에서 가장 깊은 노드 합을 구하여라 사이트 주소: https://leetcode.com/problems/deepest-leaves-sum/description/ 문제풀이 이번 문제는 아래 트리 자료구조 통해서 가장 깊은 노드의 합을 구하는 것이다. 트리, 깊이 우선 탐색, 백트레킹에 관한 개념은 아래 글에서 확인 해보면된다. 트리: https://jih3508.tistory.com/87 백트레킹: https://jih3508.tistory.com/84 깊이 우선 탐색(DFS): https://jih3508.tistory.com/94 Python class TreeNode: def __init__(s..
문제 요약 알고리즘 분류: DFS, 백트래킹 난이도: Medium 문제내용: n까지 숫자를 사전순으로 정렬 하여라. 사이트 주소: https://leetcode.com/problems/lexicographical-numbers/description/ 문제풀이 이번 문제는 숫자를 사전 순으로 정렬 하는것이다. 1, 2, 3 순이 아니라 1, 10, 100순으로 앞자리가 낮은 순으로 정렬 하는것이다. 이 문제는 깊이 우선 탐색, 백트레킹으로 해결하면된다. 깊이 우선 탐색, 백트레킹 자세한것은 아래 글에서 확인 해보면 된다. 백트레킹: https://jih3508.tistory.com/84 깊이 우선 탐색: https://jih3508.tistory.com/94 [알고리즘 이론] 깊이 우선 탐색(DFS) 이론..
문제 요약 알고리즘 분류: 동적계획법(DP) 난이도: Medium 문제내용: 숫자로된 문자열 S가 주어진다. 1~26을 A ~ Z로 디코딩 가능하다. 문자열에서 조합 가능한 가지수를 출력해라. 단 01 ~ 09은 안된다. 사이트 주소: https://leetcode.com/problems/decode-ways/description/ 문제풀이 이번 문제에는 모든 경우의 수를 구해서 풀기가 힘들다. 모든 경우의 수를 구하기에는 시간이 많이 걸려서 시간이 최적화 되도록 풀어야한다. 그래서 이번문제는 DP로 해결할것이다. DP관련 자세한 설명은 아래 글로 확인 해보면된다. https://jih3508.tistory.com/89 [알고리즘 이론] 동적계획법(Dynamic Programming, DP) 이론 이번에..
- Total
- Today
- Yesterday
- 재귀호출
- 이론
- level2
- 구현
- 동적계획법
- java
- DP
- Programmerse
- 그리디
- Greedy
- 넓이 우선 탐색
- 파이썬
- 알고리즘
- LeetCode
- 백준
- 조합
- 누적합
- 수학
- 그래프
- BFS
- DFS
- spring-boot
- 백트레킹
- 자바
- JSCODE
- Python
- 배열
- BaekJoon
- 문자열
- 동적 계획법
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |