SWEA

    [백준] 16236. 아기 상어 (파이썬)

    문제 아기 상어 아기 상어가 몇 초 동안 엄마 상어에게 도움을 요청하지 않고 물고기를 잡아먹을 수 있는지 구하는 프로그램을 작성하시오. 시간 제한 2초 메모리 제한 512MB 공간의 크기 N x N 물고기 M마리, 아기상어 1마리 물고기의 크기 1 ~ 6 , 아기 상어의 최초 크기 2 아기 상어의 이동 방법 : 1초에 상하좌우로 인접한 한 칸씩 이동 아기 상어의 이동 조건 아기 상어보다 큰 물고기 : 먹을 수 없으며, 지나갈 수 없다. 아기 상어와 크기가 같은 물고기 : 먹을 수 없으나, 지나갈 수 있다. 아기 상어보다 작은 물고기 : 먹을 수 있으며, 지나갈 수 있다. 먹을 수 있는 물고기들 중 거리가 가장 가까운 > 가장 위쪽 > 가장 왼쪽 기준으로 우선순위를 정한다. 아기 상어가 물고기를 먹는 시간..

    [백준] 17142. 연구소 3 (파이썬)

    문제 연구소 3 연구소의 상태가 주어졌을 때, 모든 빈 칸에 바이러스를 퍼뜨리는 최소 시간을 구해보자. 시간 제한 0.25초 (Python 3 : 1.5초) 메모리 제한 512MB 공간의 크기 N x N 연구소는 빈 칸(0) , 벽(1), 바이러스(2)로 이루어져 있음. 바이러스는 활성, 비활성 두 가지 상태로 존재 연구소의 바이러스 M개를 활성 상태로 변경하려고 함 활성 상태의 바이러스 이동 방법 : 1초에 상하좌우로 인접한 모든 빈 칸으로 동시에 복제. 활성 상태의 바이러스 이동 조건 : 빈 칸(0)을 만난 경우 : 복제 벽(1)을 만난 경우 : 이동 불가 비활성 상태의 바이러스(2)를 만난 경우 : 해당 바이러스가 활성 상태로 변한다. 풀이 어떤 바이러스를 활성 상태로 만들까? 처음에는 바이러스의 ..

    [백준] 14503. 로봇 청소기 (파이썬)

    문제 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 시간 제한 2초 메모리 제한 512MB 공간의 크기 N x M 로봇 청소기는 바라보는 방향이 있다. 0 : 북, 1 : 동, 2 : 남, 3 : 서 각 칸의 상태는 숫자로 표시됨 0 : 빈칸, 1 : 벽(이동 불가) 로봇 청소기의 작동 방식 현재 위치를 청소한다. 현재 위치에서 현재 방향을 기준으로 왼쪽 방향부터 차례대로 인접한 칸을 탐색한다. a. 왼쪽 방향에 아직 청소하지 않은 공간이 존재한다면, 그 방향으로 회전한 다음 한 칸을 전진하고 1번부터 진행한다. b. 왼쪽 방향에 청소할 공간이 없다면, 그 방향으로 회전하고 2번으로 돌아간다. c. 네 방향 모두 청소가 이미 되어있거나 벽인 경우에는, 바라..