목록전체 글 (431)
mojo's Blog
※ 캐시 기본 동작 캐시가 없을 때 첫 번째 요청이 아래와 같이 수행된다고 가정해본다. 첫 번째 요청이 완료되면 두 번째 요청이 수행된다고 가정해본다. 위와 같이 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸며 브라우저 로딩 속도가 느리다. 이번엔 캐시를 적용하여 첫 번째 요청이 수행된다고 가정해본다. 첫 번째 요청이 완료되면 두 번째 요청이 수행된다고 가정해본다. 캐시를 적용함으로써 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있고 브라우저 로딩 속도가 매우 빠르다. 이번엔 캐시 시간이 초과된 상태에서 세 번째 요청이 수행된다고 가정해본다. 캐시 유효 시간이 초과하면, 서버를 통해 데이터를 다..
문제 링크 : 10775번: 공항 (acmicpc.net) 10775번: 공항 예제 1 : [2][?][?][1] 형태로 도킹시킬 수 있다. 3번째 비행기는 도킹시킬 수 없다. 예제 2 : [1][2][3][?] 형태로 도킹 시킬 수 있고, 4번째 비행기는 절대 도킹 시킬 수 없어서 이후 추가적인 도킹은 불 www.acmicpc.net 공항에 G 개의 게이트가 존재하며 1, 2, ..., G 의 번호를 가진다. 비행기는 P 개가 순서대로 도착하며 i 번째 비행기는 1 번부터 \(g_{i}\) 번까지의 게이트중 하나를 영구적으로 도킹할 수 있다고 한다. 도킹할 수 없다면 현재까지 도킹된 횟수를 출력하는 문제이다. 이 문제는 유니온 파인드 알고리즘을 활용하여 해결하였고 다음과 같이 이미지를 형상화하여 해결하..
※ 빈 스코프란? 스프링 빈은 스프링 컨테이너의 시작과 함께 생성되어서 컨테이너가 종료될 때까지 유지된다. 이것은 스프링 빈이 기본적으로 싱글톤 스코프로 생성되기 때문이다. (스코프 : 빈이 존재할 수 있는 범위) 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤 : 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프 프로토타입 : 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않음 웹 관련 스코프 request : 웹 요청이 들어오고 나갈때 까지 유지되는 스코프 session : 웹 세션이 생성되고 종료될 때까지 유지되는 스코프 application : 웹의 서블릿 컨텍스와 같은 범위로 유지되는 스코프 컴포넌트 스캔을 자동으로 등록하는 방법 @..
문제 링크 : 12013번: 248 게임 (acmicpc.net) 12013번: 248 게임 이 예에서, Bessie는 두 번째와 세 번째에 있는 1을 2로 합친다. (1 2 2) 두 번째와 세 번째에 있는 2를 3으로 합친다. (1 3) 첫 번째와 두 번째 1을 합치는 것은 최적해가 아님을 주의해라. www.acmicpc.net Bessie 는 두 개의 인접한 수가 같을 때 (인접한 수 + 1) 로 합칠 수 있다고 한다. 즉 이러한 작업을 계속 하여 더이상 진행이 되지 않도록 하는 수열에 대해서 가장 큰 수를 구하는 문제이다. 위 문제를 다이나믹 프로그래밍으로 \(O(N^{3})\) 시간복잡도로 해결했다. ※ 접근 방법 1. dp[l][r] 을 [l, r] 범위 내에 얻을 수 있는 최대 점수라고 설정하..
문제 링크 : 25308번: 방사형 그래프 (acmicpc.net) 25308번: 방사형 그래프 게임 캐릭터의 능력치를 한 눈에 보기 좋게 나타내는 방법으로 방사형 그래프가 있다. 캐릭터는 8개의 능력치를 갖고 있고 각 능력치를 $a_1, a_2, \cdots, a_8$이라고 하면, 그래프는 팔각형 형태이고 www.acmicpc.net 완전 탐색 및 수학 문제이다. 능력치 8개가 주어질 때, 블록 다각형이 만들어질 수 있는 모든 경우의 수를 구하는 문제이다. ※ 문제 접근 방법 ① permutation 을 이용하여 만들어질 수 있는 \(8!\) 가지 능력치를 배치한다. ② (\(a_{1}\), \(a_{2}\), \(a_{3}\)) 부터 (\(a_{8}\), \(a_{1}\), \(a_{2}\)) 까지 ..
간단한 "implicit free list" 를 기반으로 한 malloc 코드이다. first-fit 과 next-fit 를 사용하며 boundary tag 를 이용하여 coalesce 를 한다. 그리고 블럭들은 doubleword(8 byte) 단위로 정렬이 되어야 하며 최소 블럭 사이즈는 16 byte 여야 한다. ※ define 에 대한 설명 /* * If NEXT_FIT defined use next fit search, else use first fit search */ #define NEXT_FITx /* $begin mallocmacros */ /* Basic constants and macros */ #define WSIZE 4 /* Word and header/footer size (by..