일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- 투어
- 2020 KAKAO BLIND
- 스프링
- 완도산회
- 맛집 투어
- 설탕 배달
- 2839
- Spring
- 2638
- 1로 만들기
- 고모네 콩탕
- 포두부 보쌈
- 다이나믹 프로그래밍
- HTTP API
- 양꼬치
- 2589
- 쓰레드 풀
- mvc
- 맛집
- 서블릿
- dp
- 호유동
- 스프링 MVC
- Servlet
- 동적 프로그래밍
- 알고리즘
- 문자열 압축
- 백준
- BFS
- Today
- Total
목록전체 글 (157)
프로그래밍 공방
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/l146Z/btqNqCYcj1X/HnmvFqVLXWWOTdoZC6CBmK/img.png)
Array 배열은 연속된 메모리 공간에 같은 타입을 갖는 데이터를 저장하는 자료구조이다. 동일한 타입의 여러 데이터를 연속된 공간에 저장하게 되면 각각의 요소의 위치를 시작 위치에 오프셋을 더하는것 만으로 구할 수 있다. 데이터 접근 배열은 특정 순서의 데이터에 접근할 때, 해당 순서의 인덱스를 통해 바로 접근이 가능하다. 데이터 삽입, 삭제 특정 인덱스에 데이터를 삽입하거나 해당 데이터를 삭제할 때, 배열은 아래와 같은 과정이 이루어진다. 데이터 삽입 데이터 삭제 삽입 혹은 삭제하려는 위치의 뒤에 있는 모든 요소들에 대한 작업이 필요하다. Linked List 링크드 리스트는 연속되지 않은 메모리 공간에 데이터를 저장하는 선형 자료구조이다. 링크드 리스트의 데이터는 다음 데이터의 위치 혹은 이전 데이터..
문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. 문제해결방법 1x2 타일을 두 개 붙여서 두 칸을 채우는 타일을 만든다. 이렇게 하면 1칸 짜리 타일 1개, 2칸 짜리 타일 1개로 생각할 수 있다. n번째 타일을 채우는 경우의 수를 생각하면 n-1 번째 타일에서 1칸 짜리 타일을 붙이는 방법과 n-2 번째 타일에서 2칸 짜리 타일을 붙이는 방법이 있다. 이것을 수식으로 나타내면 다음과 같다. 타일[n] = 타일[n-1] + 타일[n-2] 코드 1234567891011121314151617pa..
문제 테트리스는 C열 필드위에서 플레이하는 유명한 게임이다. 필드의 행의 수는 무한하다. 한 번 움직일 때, 아래와 같은 일곱가지 블록 중 하나를 필드에 떨어뜨릴 수 있다. 블록을 떨어뜨리기 전에, 플레이어는 블록을 90, 180, 270도 회전시키거나 좌우로 움직일 수 있다. 이때, 블록이 필드를 벗어나지 않으면 된다. 블록을 필드의 바닥이나 이미 채워져있는 칸의 위에 놓여지게 된다. 창영이가 하고있는 테트리스는 일반적인 테트리스와 약간 규칙이 다르다. 블록이 떨어졌을 때, 블록과 블록 또는 블록과 바닥 사이에 채워져있지 않은 칸이 생기면 안 된다. 예를 들어, 아래와 같이 각 칸의 높이가 2, 1, 1, 1, 0, 1인 경우를 생각해보자. 블록 5번을 떨어뜨리는 방법의 수는 아래와 같이 다섯가지이다...