[React] FSD Architecture
현대의 웹 애플리케이션은 많은 기능이 있으며 복잡하다. 따라서 가독성 및 유지보수성이 떨어진다. 또한 여러 팀이 협업하는 경우 코드 충돌 및 관리의 어려움이 발생한다. 또한 컴포넌트 기반 개발이 보편화됨에 따라 재사용 가능한 코드 구조가 필요하게 되었다. FSD(Feature-Sliced Design) 는 프론트엔드 애플리케이션을 기능 단위로 구조화...
현대의 웹 애플리케이션은 많은 기능이 있으며 복잡하다. 따라서 가독성 및 유지보수성이 떨어진다. 또한 여러 팀이 협업하는 경우 코드 충돌 및 관리의 어려움이 발생한다. 또한 컴포넌트 기반 개발이 보편화됨에 따라 재사용 가능한 코드 구조가 필요하게 되었다. FSD(Feature-Sliced Design) 는 프론트엔드 애플리케이션을 기능 단위로 구조화...
📌 문제 https://www.acmicpc.net/problem/12015 📌 설명 11053번: 가장 긴 증가하는 부분 수열 문제는 이중 for문을 돌며 현재 원소의 dp값은 현재 원소보다 작은 원소들의 dp값의 최댓값에 1을 더한 값이었다. 이번 문제는 위와 같은 O(N^2) 풀이로 풀게 되면 시간 초과가 발생한다. LIS를 푸는 방법...
📌 문제 https://www.acmicpc.net/problem/20530 📌 설명 사이클에 속하는 노드를 루트 노드로 하여 새로운 트리를 만든다. 만약 두 노드가 하나의 트리에 존재한다면 단순 경로의 수는 1, 다른 트리에 존재한다면 2이다. 먼저 DFS를 통해 사이클을 탐지하고 해당하는 노드들을 찾는다. 연결된 두 노드에 대하여 만약 한 ...
📌 문제 https://www.acmicpc.net/problem/1202 📌 설명 처음에는 DP로 푸는 배낭 문제인 줄 알았지만 입력의 제한이 너무 컸다. 또한 가방이 여러 개이며 하나의 가방에 하나의 보석만 넣을 수 있다는 점이 배낭 문제와의 차이점이었다. 당연히 보석을 분할할 수 있다는 조건이 없으므로 그리디 알고리즘을 통한 배낭 문제로도 ...
📌 문제 https://www.acmicpc.net/problem/23085 📌 설명 처음에 BFS인지 감도 안 잡히는 문제였다. BFS로 풀어야 한다는 것을 알아도 코드를 작성하기 힘들었다. 인터넷의 도움을 통해 어느 동전이 H고 T인지가 중요한 것이 아니라 H 또는 T 상태인 동전의 수가 중요하다는 것을 알았다. 초기 H의 상태와 뒤집은 횟수...
📌 문제 https://www.acmicpc.net/problem/9328 📌 설명 전형적인 BFS 문제이다. 고려해줘야 할 점이 너무 많았다. 열쇠나 문을 열었을 때 다시 BFS을 수행해주어야 한다는 점이 생각하기 힘들었다. 초기 배열을 입력받고 가장자리를 돌며 들어갈 수 있는 좌표는 q에 삽입한다. 들어갈 수 있는 조건은 빈 공간, 열쇠가 ...
📌 문제 https://www.acmicpc.net/problem/1508 📌 설명 이분 탐색을 통해 가장 가까운 심판 간 거리가 최대가 되는 경우를 찾는다. 백준 2110번: 공유기 설치와 유사한 문제이다. 아래는 공유기 설치 문제에 대한 해답 코드이다. #include <iostream> #include <algorithm&...
📌 프록시 객체란? JPA 공부를 하다 보면 프록시 객체라는 개념이 등장한다. 지연 로딩에서 프록시 객체를 로드하는데, 실제로 데이터가 필요할 때까지 실제 객체를 로드하지 않는다. 조금 더 자세히 알아보자. 특징 프록시 객체는 실제 엔티티 객체를 감싸는 가상의 객체로, 실제 데이터가 필요할 때까지 DB 조회를 지연시키는 역할을 한다. 쉽게 표현하...
📌 문제 https://www.acmicpc.net/problem/9370 📌 설명 1부터 n까지의 노드가 존재하고, 출발 노드 s가 존재한다고 하자. 추가로 두 노드 g, h가 주어지는데, 다익스트라 알고리즘을 통해 최단 경로를 계산할 때, (g, h) 간선을 포함하는 노드를 출력해야 한다. 예를 들어 노드 k까지 최단 경로를 구했다고 하자....
📌 문제 https://www.acmicpc.net/problem/1016 📌 설명 에라토스테네스의 체 알고리즘의 아이디어에 착안하여 해결하는 문제이다. $a$와 $b$ 사이에 존재하는 제곱 ㄴㄴ 수를 찾는 방법은 다음과 같다. $a \leq x \leq b$인 $x$ 중 $x \ \text{mod}\ p^2 = 0$ 를 만족하는 $x$를 소...