본문 바로가기
728x90

구현56

[python] 백준 1213 팰린드롬 만들기 https://www.acmicpc.net/problem/1213 2023. 3. 13.
[python] 백준 14503 로봇 청소기 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 문제 해결 한칸씩 정해진 규칙대로 움직이면서 청소 안된 곳 청소하는 것으로 구현하는 문제 사실 어렵진 않지만 처음 원본 그대로 deepcopy를 해야한다. 그 이유는 처음 0, 1은 단순히 청소 안된 곳, 청소 된 곳을 의미하는 것이 아니라 이동할 수 있는 곳, 이동 할 수 없는 곳(벽)을 의미하는 것이기도 하기 때문이다. 따라서 아래 코드는 vi.. 2023. 3. 7.
[python] 백준 15686 치킨 배달 https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 문제 해결 치킨집을 m개로 줄여서 각 집에서 치킨집까지 최소거리 합을 구해야한다. 치킨집을 m개로 줄이는 경우의 수는 combinations 라이브러리를 이용하면 좋을 것이다. 그러기 위해서는 치킨집 좌표를 알아야할 것이다. for문을 통해 치킨집 좌표와 집 좌표를 구해놓자. 치킨집 m개를 뽑은 다음 집 하나 치킨집 하나씩 매칭 시켜가며 최소거리 합을 구해본다. 시간복잡도가 .. 2023. 3. 5.
[python] 백준 3190 뱀 https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 해결 board 좌표를 만들어 뱀의 움직임과 사과가 있는 좌표를 구현할 수 있도록 한다. 뱀이 있는 곳은 1, 사과가 있는 곳은 2로 값을 놓는다. ( 그 외는 0) 방향이 바뀌는 것을 인지해 dictionary를 통해 dict[시간] = '움직이는 방향' 해서 'R'일 경우 'L'일 경우 인덱스 변동으로 방향이 변할 수 있도록 move라는 리스트를 정리한다. ( 동, 남, 서, 북 ) 을 리스트에.. 2023. 3. 5.
728x90