본문 바로가기

Algorithm 💡/Implementation50

[백준 5212번] 지구 온난화 https://www.acmicpc.net/problem/5212 import sysinput = sys.stdin.readline# 'X'는 땅을 나타내고, '.'는 바다를 나타낸다.# 50년이 지나면, 인접한 세 칸 또는 네 칸에 바다가 있는 땅은 모두 잠겨버린다# 상근이는 50년 후 지도를 그려보기로 했다.# 섬의 개수가 오늘날보다 적어질 것이기 때문에, 지도의 크기도 작아져야 한다.# 지도의 크기는 모든 섬을 포함하는 가장 작은 직사각형이다.# 50년이 지난 후에도 섬은 적어도 한 개 있다. # 또, 지도에 없는 곳, 지도의 범위를 벗어나는 칸은 모두 바다이다.R, C = map(int,input().split())area = [list(input().rstrip()) for _ in range(.. 2025. 1. 2.
[백준 8911번] 거북이 https://www.acmicpc.net/problem/8911import sysinput = sys.stdin.readline# 상근이는 2차원 평면 위에서 움직일 수 있는 거북이 로봇을 하나 가지고 있다.# L과 R명령을 내렸을 때, 로봇은 이동하지 않고, 방향만 바꾼다.# 상근이는 자신의 컨트롤 프로그램으로 거북이가 이동한 영역을 계산# 출력 : 거북이가 지나간 영역을 모두 포함할 수 있는 가장 작은 직사각형의 넓이# 단, 거북이가 지나간 영역이 직사각형을 만들지 않는 경우도 있다.# F : 한 눈금 앞으로# B : 한 눈금 뒤로# L : 왼쪽으로 90도 회전# R : 오른쪽으로 90도 회전# 거북이는 가장 처음에 (0, 0)에 있고, 북쪽을 쳐다보고 있다.dx, dy = [-1,0,1,0], [.. 2024. 10. 28.
[삼성 SW 역량테스트 기출] 메이즈 러너 # M명의 참가자가 미로 탈출하기 게임에 참가# 미로는 N×N 크기의 격자# # 1초마다 모든 참가자는 한 칸씩 움직입니다.# 두 위치 (x1,y1), (x2,y2)의 최단거리는 ∣x1−x2∣+∣y1−y2∣로 정의# 모든 참가자는 동시에 움직입니다.# 상하좌우로 움직일 수 있으며, 벽이 없는 곳으로 이동할 수 있습니다.# 움직인 칸은 현재 머물러 있던 칸보다 출구까지의 최단 거리가 가까워야 합니다.# 움직일 수 있는 칸이 2개 이상이라면, 상하로 움직이는 것을 우선시합니다.# 참가가가 움직일 수 없는 상황이라면, 움직이지 않습니다.# 한 칸에 2명 이상의 참가자가 있을 수 있습니다.# # 모든 참가자가 이동을 끝냈으면, 다음 조건에 의해 미로가 회전합니다.# 한 명 이상의 참가자와 출구를 포함한 가장 .. 2024. 10. 12.
[백준 16985번] Maaaaaaaaaze https://www.acmicpc.net/problem/16985# 5×5 크기의 판이 5개 # 이중 일부 칸은 참가자가 들어갈 수 있고 일부 칸은 참가자가 들어갈 수 없다.# 참가자는 주어진 판들을 시계 방향, 혹은 반시계 방향으로 자유롭게 회전할 수 있다. # 회전을 완료한 후 참가자는 판 5개를 쌓는다.# 판을 쌓는 순서는 참가자가 자유롭게 정할 수 있다.# 이렇게 판 5개를 쌓아 만들어진 5×5×5 크기의 큐브가 바로 참가자를 위한 미로# 입구는 정육면체에서 참가자가 임의로 선택한 꼭짓점에 위치한 칸# 출구는 입구와 면을 공유하지 않는 꼭짓점에 위치한 칸# 참가자는 현재 위치한 칸에서 면으로 인접한 칸이 참가자가 들어갈 수 있는 칸인 경우 그 칸으로 이동할 수 있다.# 참가자 중에서 본인이 설계.. 2024. 10. 11.
[삼성 SW 역량테스트 기출] 마법의 숲 탐색 https://www.codetree.ai/training-field/frequent-problems/problems/magical-forest-exploration/description?page=1&pageSize=5 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai# 숲의 동쪽, 서쪽, 남쪽은 마법의 벽으로 막혀 있으며, 정령들은 숲의 북쪽을 통해서만 숲에 들어올 수 있습니다.# 총 K명의 정령은 각자 골렘을 타고 숲을 탐색# 각 골렘은 십자 모양의 구조를 가지고 있으며, 중앙 칸을 포함해 총 5칸을 차지# 골렘의 중앙을 제외한 4칸 중 한 칸은 골렘의.. 2024. 10. 9.
[백준 21611번] 마법사 상어와 블리자드 https://www.acmicpc.net/problem/21611import sysfrom collections import dequeinput = sys.stdin.readline# 가장 처음에 상어가 있는 칸을 제외한 나머지 칸에는 구슬이 하나 들어갈 수 있다# 구슬은 1번 구슬, 2번 구슬, 3번 구슬이 있다# 같은 번호를 가진 구슬이 번호가 연속하는 칸에 있으면, 그 구슬을 연속하는 구슬이라고 한다.# 블리자드 마법을 시전하려면 방향 di와 거리 si를 정해야 한다. # 총 4가지 방향 ↑, ↓, ←, → (1, 2, 3, 4)# 마법사 상어는 블리자드를 총 M번 시전# 시전한 마법의 정보가 주어졌을 때# 출력 : 폭발한 1번 구슬의 개수, 폭발한 2번 구슬의 개수, 폭발한 3번 구슬의 개수N,.. 2024. 10. 5.