전체 글

전체 글

    BOJ - 아기 상어 16236번 (python)

    ❓ 문제 - 백준 아기 상어 16236번 - python 풀이법 출처 (https://www.acmicpc.net/problem/16236) 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 📝 문제해결법 1. 이 문제는 BFS + 구현으로 풀었다. 공간에 대한 정보를 입력받으면서 아기 상어가 존재하는 행,열을 저장하고, 처음에 아기상어가 존재하는 공간의 값을 0으로 바꿔준다. 현재 아기 상어가 존재하는 행과 열에 대해서 BFS를 돌아서 현재 자신보다 크기가 작은 물고기가 있는지 탐색하고, 존재한다면 가장..

    BOJ - 나무 재테크 16235번 (python)

    ❓ 문제 - 백준 나무 재테크 16235번 - python 풀이법 출처 (https://www.acmicpc.net/problem/16235) 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 📝 문제해결법 1. 이 문제는 구현으로 풀었다. 땅의 양분 정보를 저장할 food, 나무의 나이를 저장할 tree, 겨울철에 땅의 양분을 줄 feed 리스트를 사용한다. n의 범위가 1 ~ 10 사이 이므로 리스트로 선언하여 이중 for문을 통에 접근해도 시간 복잡도에 걸리지 않을 수 있다. grow() 함..

    BOJ - 치킨 배달 15686번 (python)

    ❓ 문제 - 백준 치킨 배달 15686번 - python 풀이법 출처 (https://www.acmicpc.net/problem/15686) 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 📝 문제해결법 1. 이 문제는 BFS(조합)+구현으로 풀었다. combination() 함수를 사용하여 기존에 있는 치킨 집에서 m개의 치킨집을 선택하여 해당 치킨집만을 운영했을 때 도시의 치킨 거리를 구하여 도시의 치킨 거리의 최솟값을 갱신해준다. find_dist() 함수를 사용하여 현재 집 위치에서..

    BOJ - 드래곤 커브 15685번 (python)

    ❓ 문제 - 백준 드래곤 커브 15685번 - python 풀이법 출처 (https://www.acmicpc.net/problem/15685) 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커 www.acmicpc.net 📝 문제해결법 1. 이 문제는 Stack+구현으로 풀었다. visited 리스트를 통해 드래곤 커브로 그려지면 방문처리를 해준다. 드래곤 커브 후 정사각형의 갯수를 구할 때는 visited 리스트를 이용하여 격자판의 범위 (0~100 행, 0 ~100열)에서 현재 위치 행 ~ 현재위치 행 +1, ..