문제 요약알고리즘 분류: 배열, 시뮬레이션, 구현난이도: Medium문제내용:8 × 8 체스말이 주어진다. 체스말에서 king 1명, queen N명이 있다.Queem 중에서 왕을 잡을수있는 Queen의 위치들을 반한 하여라단 앞에 가로 막는 퀸이 있으면 그것은 제외 해야 한다.사이트 주소: https://leetcode.com/problems/queens-that-can-attack-the-king/description/문제풀이 이번 문제는 구현 문제중에서 시뮬레이션 문제이다. 각 Queen을 이동 시켜 King까지 갈수 있는지 체크만 하면 되는 문제이다. 일단 퀸이 움직일수있는 방향은 대각선, 가로, 세로 총 8군대이다. 하지만 각 queen이 8방향 탐색하면 시간적으로 비효울이 나와서 반대..
문제 요약알고리즘 분류: Tree, 재귀호출난이도: Medium문제내용:nums배열, 리스트를 주어 줬을때 아래와 같은 트리를 완성 하여라nums에서 가장 큰 값을 루트 노드로 만듭니다.가장 큰 값의 왼쪽 부분 배열로 왼쪽 서브트리를 재귀적으로 만듭니다.가장 큰 값의 오른쪽 부분 배열로 오른쪽 서브트리를 재귀적으로 만듭니다.사이트 주소:https://leetcode.com/problems/maximum-binary-tree/description/문제풀이 이번 문제는 이진 트리를 완성시켜야 되고 완성시키기 위해서 재귀호출을 사용 해서 풀것이다. 트리에 대한 자세한 글은 아래 글에서 확인 하여라https://jih3508.tistory.com/87 [알고리즘 이론] 트리(Tree)이론 이번에 볼 자료구조는..
문제 요약알고리즘 분류: Two Pointer난이도: Medium문제내용:difficulty, profit, worker 있다.dificulty[i]는 난이도이고 profit[i]는 diffculty[i]수행시 보상이다.worker는 일하는 사람 최대 할수 있는 난이도를 나타내고 diffculty 이하만 수행 할수 있다.worker들이 최대 보상 받을수 있는 합친 값을 나타 내어라사이트 주소: https://leetcode.com/problems/most-profit-assigning-work/description/문제풀이 이번 문제는 브루드포스 같은 모든 경우의 수로 풀면 시간 초과가 난다. 그래서 최적의 시간 복잡도를 돌려야 하는 투포인트 문제이다. 투 포인터 대한 설명은 아래글에 참고하여라https..
문제 요약알고리즘 분류: Array, 구현난이도: Medium문제내용:nums 배열/리스트를 준다.nums에 아래조건하에 2차원 리스트로 변경한것을 반환 해야한다..각 리스트에 중복된 숫자가 없어야 한다.사이트 주소: https://leetcode.com/problems/convert-an-array-into-a-2d-array-with-conditions/description/문제풀이 이번 문제는 간단한 구현문제이다. 구현은 아래와 같이 하면된다.2차원 리스트를 선언한다.각 리스트 1행부터 탐색해서 num이 있는지 확인한다.없으면 없는 행에 추가한다.리스트 각 행마다 탐색했는데 다 있으면 새로 행을 추가해서 num을 담는다.이렇게 구현하면 시간 복잡도는 nums 개수 탐색하는것과 리스트 포함하는지 확인..
문제 요약알고리즘 분류: Greedy난이도: Medium문제내용:tops, bottoms 같은 길이 주사위 배열을 준다.tops[i], bottoms[i] 같은 index위치끼리 바꿀수 있다.top과 bottom을 바꾸면서 top이나 bottom중에서 같은 주사위 숫자가 같게 만들수 있을때 최소 몇번 바꾸면되는지 반환 하여라 만약 안될 경우 -1로 반환 하여라사이트 주소: https://leetcode.com/problems/minimum-domino-rotations-for-equal-row/description/문제풀이모든 경우의 수로 답은 나오지 브루드포스로 풀경우에는 시간 초과가 나올것이다. 그래서 이번문제는 그리디로 풀어야 한다. 그리디 관련 설명은 아래글을 확인 해보면된다.https://ji..
문제 요약알고리즘 분류: Hash, Ascill Code, 문자열난이도: Medium문제내용:a-z 를 0-25까지 표현한다.(ex. a = 0, b = 1, c = 3 ...... ,z = 25)문제에서 문자열 s, k정수를 준다.문자열 s에서 k만큼 자르고 자른 문자열에서 각 알파벳을 숫자로 변환하고 합친다.합친것을 숫자에서 알파벳으로 변한다. 넘어가면 26나머지 값을 알파벳을 변환한다.자른 문자열에서 처리한 것들을 합친것을 반한하여라사이트 주소: https://leetcode.com/problems/hash-divided-string/description/문제풀이 이번 문제는 문자열을 각 문자형으로 변환후 Ascill Code로 처리하는 문제이다. 문자형 Ascill Code로 변환해서 처리하는 문..
문제 요약알고리즘 분류: 동적계획법(DP)난이도: Medium문제내용:1 ~ 365여행가는 날들 days 변수와 1, 7, 30일 기준 이용료 costs를 준다.days 날짜대로 여행 간다고 했을때 최소 비용 구하여라사이트 주소: https://leetcode.com/problems/minimum-cost-for-tickets/description/문제풀이 이번 문제는 동적계획법(DP)으로 풀어야 통과되는 문제이다. DP에 관한 성명은 아래 글에서 확인 해보면된다.https://jih3508.tistory.com/89 [알고리즘 이론] 동적계획법(Dynamic Programming, DP)이론 이번에 볼 알고리즘은 동적계획법(Dynamic Programming)이다. 이 알고리즘은 줄어서 dp라고 많이..
문제 요약알고리즘 분류: Tree, BFS, BST난이도: Medium문제내용:원래 BST의 모든 키가 자신보다 큰 키들의 합과 원래 키를 더한 값으로 변경되도록 하세요.사이트 주소: https://leetcode.com/problems/binary-search-tree-to-greater-sum-tree/description/ 문제풀이문제의 트리 구조는 아래와 같다. 노드의 왼쪽 서브트리는 노드의 키보다 작은 키를 가진 노드들로만 이루어져 있어야 합니다.노드의 오른쪽 서브트리는 노드의 키보다 큰 키를 가진 노드들로만 이루어져 있어야 합니다.왼쪽 및 오른쪽 서브트리 또한 이진 탐색 트리여야 합니다.이번 문제에서는 트리의 탐색하면서 더하는 식으로 진행 하면된다.트리와 DFS 관한 내용은 아래 글에서 확인 ..
- Total
- Today
- Yesterday
- level2
- 파이썬
- DP
- 그래프
- BaekJoon
- 넓이 우선 탐색
- 누적합
- 재귀호출
- 그리디
- 동적 계획법
- DFS
- 문자열
- 수학
- Programmerse
- Python
- java
- 구현
- 배열
- BFS
- JSCODE
- 동적계획법
- 알고리즘
- spring-boot
- LeetCode
- 백트레킹
- 백준
- 이론
- 조합
- 자바
- Greedy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |