[Algorithm] 백준 13300 방 배정 (Python)
https://boj.kr/13300이 문제는 그리 어렵지 않은 문제지만, 여러가지 해법이 있는게 재미있어서 글을 쓰게 되었습니다. 문제는 읽었다고 가정하고 진행하겠습니다.어떤 그룹에서 사람 수를 N이라고 합시다. (음이 아닌 정수)1. 사람 수를 K로 나눈 몫을 더하고, 나머지가 있는 경우 1을 더하기인터넷을 찾아 보면 가장 일반적이고, 생각하기 쉬운 풀이입니다.students = [[0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0]]으로 초기화하고,반복문을 통해 입력으로 S, Y를 받아 students[S][Y] += 1 해준 뒤마지막에 반복문에서 각 배열값을 K로 나눈 몫과 나눴을 때 나머지가 있는 경우 1을 더한 값을 답에 더합니다.2. 실수형으로 나누고 올림(ceill)각 배열..
2025. 3. 30.
[Algorithm] 백준 13787 Infinity Maze
https://www.acmicpc.net/problem/13787 백준에서 문제 찾아보다가 이름이 맘에 드는 문제를 발견했습니다. 재작년에 출시한 게임 iMaze와 같은 이름! 너무 반가워서 바로 풀어보았습니다. 문제가 영어로 되어있어서 우리말로 풀어볼게요. 문제 후쿠오카 박사는 2D 미로에 간단한 로봇을 배치시켰습니다. 미로는 출구가 없어서 로봇이 밖으로 나갈 수 없습니다. 아래 그림처럼 H x W 격자 셀로 만들어졌고, 미로의 위, 오른쪽, 아래, 왼쪽은 각각 북(N), 동(E), 남(S), 서(W)쪽입니다. 각 셀은 벽(#)이거나 빈 공간(.)이고, 좌표 (i, j)에 대해 i는 남쪽으로 갈수록 커지고, j는 동쪽으로 갈수록 커져서, 가장 왼쪽 위부터 (1, 1), 가장 오른쪽 아래는 (H, W)..
2024. 2. 15.