https://leetcode.com/discuss/study-guide/786126/Python-Powerful-Ultimate-Binary-Search-Template.-Solved-many-problems어떤 문제든지 풀기 쉽게 만들어진 binary se
Inorder Traversal 하기
https://leetcode.com/tag/bit-manipulation/ 의 문제 및 풀이 EASY 순서. 문제와 풀이는 하단에 계속 업데이트 될 예정.https://leetcode.com/problems/decode-xored-array/enco
링크드 리스트의 값이 0또는 1일때 주어진 리스트가 이진수로 표현하는 값을 구하기 Input: head = 1,0,1 Output: 5linked list링크드 리스트의 head포인터가 주어지고, 리스트의 중간노드를 리턴하기linked listInput: head =
일련의 값에서 바로 다음 큰값이나, 바로 다음 작은 값을 구해야할 때 사용할 수 있는 Stack 풀이법. increasing 삽입하려는 값이 stack의 top보다 클때만 push, 삽입하려는 값보다 작은 값은 모두 stack에서 pop.배열에서 다음 작은값이 무엇인
k개의 면을 가진 주사위 n개가 존재한다. 이 주사위 n개를 던졌을때, 그 합이 target값이 나오는 경우의 수를 구하라. 결과 값은 % 1000000007 으로 모듈러 연산해서 리턴하라(오버플로우 발생예방)각각의 주사위 값은 유니크하다. (1,6) (6,1)은 독립
Discuss 중에 추천 글 -> How to approach most of DP problems.DP문제 풀이의 정석임. 반드시 또 읽기!if a problem is asking for the maximum/minimum/longest/shortest of somet
주어진 배열에서 0을 뒤로 밀어라. (https://www.pramp.com/challenge/9PNnW3nbyZHlovqAvxXW)참고로 leetcode move zeros 와 동일한 문제.배열을 추가로 생성하고 기존 배열의 값이 0이아니면 새로 추가. 그런
s로 주어지는 문자열 안에서 p로 주어지는 문자열의 Anagram을 찾고 시작부분의 인덱스를 리턴하라.해시테이블과 sliding window기법을 사용하는 좋은 문제였다. p크기 만큼의 윈도우를 s내에서 하나씩 오른쪽으로 이동하면서 체크하면 됨.Runtime: 12 m
각각의 셀마다 가장 가까운 0의 거리는? Ideabrute-force search mat from 0 to n -> O(N^2) (N=m\*n)using Queue -> O(N) / O(N)문제를 보면 0주변은 1, 1주변은 2 이런식으로 증가된다. 너비우선으로 값이
배열이 주어진다. 자기자신을 제외한 나머지 배열을 모두 곱한 값으로 변환해라. (단, 나눗셈을 사용할 수 없다)res23231312l->r: 1 10 101 1012l<-r: 321 32 3
intervals\[i] = \[starti, endi] 로 interval이 주어진다. 겹치는 부분을 합쳐라. (참고로 interval\[]는 정렬되어있지 않음)greedy한 방식으로 첫번째 값과 interval을 비교하면서 겹치면 확장. 안겹치면 push하고 그 값
총 n개의 강좌 (0 ~ n-1)가 주어지고, 각각의 강좌는 사전수강 강좌가 있다. 강좌, 사전수강필요 강좌 의 배열이 주어질때, 강좌를 수강해야할 순서대로 정렬하라. 만약 모든 강좌를 수강하는게 불가능하면 빈 vector를 리턴.선후 관계가 정의된 그래프 구조상에서,