문제 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 쌓여서 FIFO - First In First Out - 에 따라 인쇄가 되게 된다. 하지만 상근이는 새로운 프린터기 내부 소프트웨어를 개발하였는데, 이 프린터기는 다음과 같은 조건에 따라 인쇄를 하게 된다. 현재 Queue의 가장 앞에 있는 문서의 ‘중요도’를 확인한다. 나머지 문서들 중 현재 문서보다 중요도가 높은 문서가 하나라도 있다면, 이 문서를 인쇄하지 않고 Queue의 가장 뒤에 재배치 한다. 그렇지 않다면 바로 인쇄를 한다. 예를 들어 Queue에 4개의 문서(A B C D)가 있고, 중요도가 2 ..
문제 LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. 더보기 입력 첫째 줄과 둘째 줄에 두 문자열이 주어진다. 문자열은 알파벳 대문자로만 이루어져 있으며, 최대 1000글자로 이루어져 있다. 출력 첫째 줄에 입력으로 주어진 두 문자열의 LCS의 길이를 출력한다. 예제 입력 1 복사 ACAYKP CAPCAK 예제 출력 1 복사 4 문제 유형 DP 문제 풀이 문제를 풀기 위해서 한 문자열을 기준으로 잡고, 한 글자씩 추가하면서 지금까지의 부분 문자열의 'LCS(최장 공통 부분 수열)'이 몇 개인지 기록해나간다. 주어..
백준 15624번 피보나치 수 7 문제 유형: DP (동적 계획법) 문제 주의할 점 Python, JavaScript로 풀이시 Top-Down 방식 즉, 재귀 방식으로는 시간 초과가 발생한다. 또한 입력으로 주어지는 수가 최대 100만인데, Python은 최대 1000번까지 재귀할 수 있으므로 재귀 방식으로는 풀리지 않는다. 따라서 이 문제는 메모이제이션 + Bottom-Up 방식으로 풀이한다. Python 코드 JavaScript 코드
- Total
- Today
- Yesterday
- 리액트
- Component
- 그래프
- react
- BOJ
- 데이터베이스
- zustand
- CSS
- JavaScript
- 정렬
- git
- 함수
- Python
- DOM
- 자바스크립트
- React Query
- github
- useState
- state
- 에러
- 알고리즘
- error
- DB
- mdn
- leetcode
- Context API
- Browser
- 브라우저
- 자료구조
- 파이썬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |