All
-
[재귀]-기본-색종이 만들기알고리즘 스터디 01/숙제 2023. 4. 12. 23:10
- https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net [ 2630 ] 색종이 만들기 아래 과 같이 여러개의 정사각형칸들로 이루어진 정사각형 모양의 종이가 주어져 있고, 각 정사각형들은 하얀색으로 칠해져 있거나 파란색으로 칠해져 있다. 주어진 종이를 일정한 규칙에 따라 잘라서 다양한 크기를 가진 정사각형 모양의 하얀색 또는 파란색 색종이를 만들려고 한다. 전체 종이의 크기가 N×N(N=2k, ..
-
[재귀]-기본-종이의 개수알고리즘 스터디 01/숙제 2023. 4. 12. 22:20
- https://www.acmicpc.net/problem/1780 1780번: 종이의 개수 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수 www.acmicpc.net [ 1780 ] 종이의 개수 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수로 되어 있다면 이 종이를 그대로 사용한다. (1)이 아닌 경우에는 종이를 같은 크기의 종이 9개로 자르고, 각각의 잘린 종이..
-
[재귀]-기본-재귀함수가 뭔가요?알고리즘 스터디 01/숙제 2023. 4. 12. 01:17
- https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net [ 17478 ] 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대학교가 자신과 맞는가에 대한 고민을 항상 해왔다. 중앙대학교와 자신의 길이 맞지 않다고 생각한 JH 교수님은 결국 중앙대학교를 떠나기로 결정하였다..
-
재귀알고리즘 스터디 01/강의 정리 2023. 4. 11. 04:00
재귀 : 하나의 함수에서 자기 자신을 다시 호출해 작업을 수행하는 알고리즘 절차지향적 사고 / 귀납적 사고 절차지향적 사고 : 1번째 도미노가 쓰러진다 -> 2번째 도미노가 쓰러진다 -> ... -> K번째 도미노가 쓰러진다 귀납적 사고 : 1번째 도미노가 쓰러지면 2번째 도미노가 쓰러진다 = K번째 도미노가 쓰러지면 K+1번째 도미노가 쓰러진다 재귀 함수의 조건 자기 자신을 호출하지 않고 종료되는 특정 조건이 있어야 함 Base Condition 모든 입력은 base condition으로 수렴해야함 재귀 함수에 대해 1. 함수의 인자로 받을 것과 어디까지 연산한 후에 자기 자신에게 넘겨줄 지 명확히 정해야함 2. 모든 재귀함수는 반복문으로 동일한 동작을 하는 함수를 만들어 낼 수 있음 3. 재귀는 반복..
-
[BFS]-응용-빙산알고리즘 스터디 01/숙제 2023. 4. 10. 15:32
- https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net [ 문제번호 ] 문제제목 지구 온난화로 인하여 북극의 빙산이 녹고 있다. 빙산을 그림 1과 같이 2차원 배열에 표시한다고 하자. 빙산의 각 부분별 높이 정보는 배열의 각 칸에 양의 정수로 저장된다. 빙산 이외의 바다에 해당되는 칸에는 0이 저장된다. 그림 1에서 빈칸은 모두 0으로 채워져 있다고 생각한다. 2 4 5 3 3 2 5 2 7 6 2 4 그림 1...
-
[BFS]-응용-텀 프로젝트알고리즘 스터디 01/숙제 2023. 4. 7. 19:41
- https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net [ 9466 ] 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 수도 있다. 프로젝트 팀을 구성하기 위해, 모든 학생들은 프로젝트를 함께하고 싶은 학생을 선택해야 한다. (단, 단 한 명만 선택할 수 있다.) 혼자 하고..
-
DFS알고리즘 스터디 01/강의 정리 2023. 4. 5. 18:40
DFS Depth First Search 다차원 배열에서 각 칸을 방문할 때 깊이를 우선으로 방문하는 알고리즘 BFS Breadth First Search 다차원 배열에서 각 칸을 방문할 때 너비를 우선으로 방문하는 알고리즘 1. 시작하는 칸을 스택에 넣고 방문했다는 표시 2. 스택에서 원소를 꺼내 그 칸과 상하좌우로 인접한 칸에 대해 3번을 수행 3. 해당 칸을 이미 방문했다면 아무것도 하지 않고, 처음으로 방문했다면 방문표시를 남기고 해당 칸을 스택에 삽입 4. 스택이 빌 때까지 2-3 반복 모든 칸이 스택에 한번씩 들어가므로 시간복잡도는 n개의 칸인 경우 O(n) BFS와의 차이점은 큐와 스택의 차이 뿐 방문순서에 큰 차이가 있음 BFS를 수행할 경우 큐에는 시작점을 중심으로 거리순으로 칸들이 들어..
-
[BFS]-응용-벽 부수고 이동하기알고리즘 스터디 01/숙제 2023. 4. 5. 17:07
- https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net [ 2206 ] 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로로 이동하려 한다. 최단경로는 맵에서 가장 적은 개수의 칸을 지나는 경로를 말하는데, 이때 시작..