도메인 주도 설계 첫걸음 - 04장 바운디드 컨텍스트 연동
범위 [Part 1] 전략적 설계 - 04장: 바운디드 컨텍스트 연동 개념 정리 컨트랙트(contract): 바운디드 컨텍스트 사이의 접점 책에서 기억하고 싶은 내용 바운디스 컨텍스트의 구현은 서로 독립적으로 발전할 수 있지만, 상호작용해야 한다. 협력형 패턴 그룹 파트너십 패턴 파트너십(partnership) 모델에...
범위 [Part 1] 전략적 설계 - 04장: 바운디드 컨텍스트 연동 개념 정리 컨트랙트(contract): 바운디드 컨텍스트 사이의 접점 책에서 기억하고 싶은 내용 바운디스 컨텍스트의 구현은 서로 독립적으로 발전할 수 있지만, 상호작용해야 한다. 협력형 패턴 그룹 파트너십 패턴 파트너십(partnership) 모델에...
문제 49189 가장 먼 노드 풀이 너비 우선 탐색(bfs)을 한다. 시작 노드를 거리를 0으로 설정하고 큐에 넣고, 탐색을 시작한다. 큐에서 노드를 꺼낸다. 이미 방문한 노드라면 처음으로 돌아간다. 연결된 노드들을 거리를 현재 노드의 거리 + 1로 설정하고 큐에 넣는다. 큐가 비면 탐색을 종료하고 마지막으로 탐색한 노드들과...
문제 43238 입국심사 풀이 입국 심사에 걸리는 시간은 1 ~ 가장 긴 심사 시간 * 입국심사를 기다리는 사람 수이다. 이 시간을 기준으로 이진 검색을 한다. 답 kotlin code class Solution { fun solution(n: Int, times: IntArray): Long = solution(1L, time...
문제 42895 N으로 표현 풀이 N이 1개일때부터 8개일때까지 number와 같은 수가 나올 때까지 모든 경우의 수를 연산한다. 예를 들어 N이 1개이면 만들 수 있는 수는 5 뿐이다. N이 2개이면 55, 5 + 5 = 10, 5 - 5 = 0, 5 * 5 = 25, 5 / 5 = 1. 즉, 55, 10, 0...
문제 60057 문자열 압축 풀이 청크 사이즈를 1에서 전체 문장 사이즈 1/2까지로 변경해가며 문장을 나눈다. 각 청크 사이즈에서 문자열을 잘라 압축하여 표현한 문자열의 길이는 측정하고, 가장 작은 길이를 남겨둔다. kotlin code val chunks = s.chunked(chunkSize) var currChunk = "" ...
문제 77484 로또의 최고 순위와 최저 순위 풀이 0의 수를 구한다. kotlin code val zeroCount = lottos.count { it == 0 } 당첨 번호와 일치하는 수를 구한다. kotlin code 로또 번호와 당첨 번호의 교집합을 구한 후 교집합의 크기를 구하면 간단하게 해결된다. val mCount = lo...
문제 92334 신고 결과 받기 풀이 리포트의 중복을 제거하고 Array 타입을 Array<Pair<String, String>> 형태로 바꾼다. kotlin code val reportPairArray = report.toSet().map { it.split(' ').let { l -> Pair(l[0], l[1] )}...
문제 2042 구간 합 구하기 풀이 Long형 data를 최대 1,000,000개 합쳐야 하는 문제이다. 단순한 sum으로는 timeout이 발생한다.(아래 오답 부분 참고) 구간의 합을 구하기 위해 segment tree를 이용한다. Segment Tree는 부모 노드의 값이 자식 노드 값을 합이 되는 완전 이진 트리이다. ...
정의 컴퓨터 과학에서, 우선순위 큐(Priority queue)는 평범한 큐나 스택과 비슷한 축약 자료형이다. 그러나 각 원소들은 우선순위를 갖고 있다. 우선순위 큐에서, 높은 우선순위를 가진 원소는 낮은 우선순위를 가진 원소보다 먼저 처리된다. 만약 두 원소가 같은 우선순위를 가진다면 그들은 큐에서 그들의 순서에 의해 처리된다.[우선...
범위 [Part 1] 전략적 설계 - 03장: 도메인 복잡성 관리 개념 정리 바운디드 컨텍스트(bounded context): 제한된 문맥, 경제지어진 문맥, 모델의 경계, 유비쿼터스 언어의 범위 시맨틱 도메인: 주어진 컨텍스트 내에서 의미 집합을 공유하는 특정 장소 또는 그 의미를 유지하는 언어 책에서 기억하고 싶은 내용 ...