문제 링크 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 풀이 # 톱니바퀴 주어진 방향으로 회전시키기 def rotate_gears(gear, direction): if direction == 1: # 시계 방향 회전 return gear[-1] + gear[:-1] else: # 반시계 방향 회전 return gear[1:] + gear[0] # 톱니바퀴 회전시키고 최종 점수 계산 def solve(gears, rotations): for gear_num, direction in rotations: # ..
문제 링크 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 풀이 from collections import deque # 주어진 나라들에서 연합 찾기 def find_union(board, n, l, r): dx = [-1, 0, 1, 0] dy = [0, -1, 0, 1] groups = [] visited = [[False for _ in range(n)] for _ in range(n)] # 모든 나라 순회, 연합 찾기 for x in range(n): for y in range(n): if..
문제 링크 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 풀이 # 입력값 받기 n, m = map(int, input().split()) r, c, d = map(int, input().split()) room = [list(map(int, input().split())) for _ in range(n)] # 북, 동, 남, 서 방향 이동 좌표 dx = [-1, 0, 1, 0] dy = [0, 1, 0, -1] # 현재 위치 청소 def clean(x, y):..
문제 종운이는 운영하던 게임에 랭킹전 기능을 추가하려고 한다. 플레이어 간의 실력차이가 있을 수 있기 때문에 입장을 신청하면 자신과 비슷한 레벨의 플레이어들을 매칭하여 게임을 시작하게 하려고 한다. 플레이어 간 매칭을 해주는 시스템은 다음과 같다. 플레이어가 입장을 신청하였을 때 매칭이 가능한 방이 없다면 새로운 방을 생성하고 입장시킨다. 이때 해당 방에는 처음 입장한 플레이어의 레벨을 기준으로 -10부터 +10까지 입장 가능하다. 입장 가능한 방이 있다면 입장시킨 후 방의 정원이 모두 찰 때까지 대기시킨다. 이때 입장이 가능한 방이 여러 개라면 먼저 생성된 방에 입장한다. 방의 정원이 모두 차면 게임을 시작시킨다. 플레이어의 수 p, 플레이어의 닉네임 n, 플레이어의 레벨 l, 방 한개의 정원 m이 주..

문제 상근이는 2차원 평면 위에서 움직일 수 있는 거북이 로봇을 하나 가지고 있다. 거북이 로봇에게 내릴 수 있는 명령은 다음과 같이 네가지가 있다. F: 한 눈금 앞으로 B: 한 눈금 뒤로 L: 왼쪽으로 90도 회전 R: 오른쪽으로 90도 회전 L과 R명령을 내렸을 때, 로봇은 이동하지 않고, 방향만 바꾼다. 명령을 나열한 것을 거북이 로봇의 컨트롤 프로그램이라고 한다. 상근이는 자신의 컨트롤 프로그램으로 거북이가 이동한 영역을 계산해보려고 한다. 거북이는 항상 x축과 y축에 평행한 방향으로만 이동한다. 거북이가 지나간 영역을 모두 포함할 수 있는 가장 작은 직사각형의 넓이를 구하는 프로그램을 작성하시오. 단, 직사각형의 모든 변은 x축이나 y축에 평행이어야 한다. 아래 그림에서 거북이는 가장 처음에 ..
- Total
- Today
- Yesterday
- 리트코드
- 정렬
- 카카오 코딩테스트
- 구현
- 실버3
- 릿코드
- 코딩 테스트
- 문자열
- 브루트포스 알고리즘
- 너비 우선 탐색
- 그래프 이론
- Simulation
- lv.2
- 수학
- 다이나믹 프로그래밍
- 프로그래머스
- 깊이 우선 탐색
- Python
- 카카오
- 실버2
- 코딩테스트
- 골드5
- leetcode
- 시뮬레이션
- lv.3
- 백트래킹
- 그래프 탐색
- 코드트리
- 백준
- 그리디 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |