www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 문제는 위와 같으며, 나이트가 한번씩 이동할 때마다 몇번째 이동인지와 해당 위치(x, y)를 배열 형태로 우선순위 큐에 저장한 뒤 저장된 위치가 도착 지점과 일치하는 경우 해당 위치까지 이동한 칸의 수(몇번째 이동인지)를 출력하여 문제를 해결할 수 있습니다. 파이썬 코드는 다음과 같습니다. from sys import stdin import heapq # 나이트가 이동할 수 있는 위치 저장 dx = [-2, -2..
www.acmicpc.net/problem/4963 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 문제는 위와 같으며, 지도의 정보를 이차원 배열로 저장하고 각 섬을 방문한 적이 있는지 확인하는 이차원 배열을 만든 후, 기본적인 DFS 를 통해 연결된 땅을 모두 방문처리하고 나서 섬의 개수를 증가시키는 방식으로 섬이 몇개인지 확인할 수 있습니다. 파이썬 코드는 다음과 같습니다. import sys sys.setrecursionlimit(10000) # 재귀함수 범위 제한 수정 # 상하좌우, 대각선까지 ..
www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주 www.acmicpc.net 문제는 위와 같으며 이 경우는 일반적인 DFS 를 통해 연결 요소를 확인하고 그 수를 세면 해결할 수 있는 문제입니다. 파이썬 코드는 다음과 같습니다. from sys import stdin # 일반적인 DFS 수행 (연결 요소 찾기) def dfs(start): queue = [start] while queue: node = queue.pop() ..
- Total
- Today
- Yesterday
- Algorithm
- Combination
- CodePipeline
- DFS
- 소수
- ionic
- 프로그래머스
- permutation
- java
- AWS
- 조합
- CodeCommit
- array
- sort
- Baekjoon
- EC2
- cloudfront
- programmers
- ECR
- 에라토스테네스의 체
- string
- search
- map
- BFS
- 수학
- 순열
- spring
- Dynamic Programming
- SWIFT
- CodeDeploy
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 29 | 30 | 31 |
