백준 34

[BOJ] 16236. 아기상어

백준 문제 주소: www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가�� www.acmicpc.net 문제가 귀여워서 시작했습니다. ㅎㅎ 푼 방법은!!! 아기상어의 위치는 움직이므로 처음 시작점을 9 -> 0으로 만듭니다. BFS를 이용하여 가장 가까우면서 먹을 수 있는 물고기를 찾아 잡아먹고! visited 배열을 만들어 자기 자신이 갔던 곳을 체크하면 됩니다. 한 번 잡아 먹을 때마다 계속 visited 초기화와 지난 시간을 체크하고, BFS 큐를 초기화하여 잡아 먹은 지점에서 ..

Study/BOJ 2020.10.07

[BOJ] 2064. IP 주소

백준 문제 주소 : www.acmicpc.net/problem/2064 2064번: IP 주소 네트워크에 연결되어 있는 컴퓨터들은 각각 하나의 IP 주소를 갖게 된다. 그리고 이러한 IP 주소를 갖는 컴퓨터들이 여러 개 모여서 하나의 IP 네트워크를 구성하게 된다. IP 네트워크는 ‘네트워� www.acmicpc.net 비트마스크로 풀려다가 포기하고 문자열로 푼 다음, 다시 비트마스크로 풀은 문제입니다... 돌돌 비트마스크 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 그래서 오늘 올릴 코드는 2개입니다! 문자열 코드와 비트마스크 코드!! ** 푼 방법 1. 일단 네트워크 마스크를 구한다. 2. 아무 IP에 네트워크 마스크를 &연산하면 네트워크 주소가 나온다. 끝. 하기엔 뭔가 아쉬우니까? 네트워크 마스크는 XOR연산과 NOT연산..

Study/BOJ 2020.09.17

[BOJ] 2206. 벽 부수고 이동하기

백준 문제 주소 : www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로�� www.acmicpc.net DFS, BFS의 머나먼 조상님 미로 문제에 조건 한 가지를 추가한 문제였습니다. 미로에서 단 한번!!! 벽을 부술 수 있다는 건데요. 하 ㅠㅠ 너무 힘들었어요 보이나요 제 노력... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 처음은 그냥 itertools 라이브러리의 combinations을 사용해서 1이 하나씩 사라진 모든 2차원 배열을 만들었습니다. 바로 메모리초과~~^^ 그래..

Study/BOJ 2020.09.16

[BOJ] 11444. 피보나치 수 6

백준 문제 주소 : https://www.acmicpc.net/problem/11444 11444번: 피보나치 수 6 첫째 줄에 n이 주어진다. n은 1,000,000,000,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 알고리즘은 수학과 밀접한 관련이 있다는 걸 깨닫게 해주는 문제였습니다... (불태웠어,,,,) 피보나치 수는 재귀로 쉽게 풀 수 있지만은, 이 문제는 10조도 아닌 10경번째 피보나치 수를 구해야되기 때문에 시간이 정말 중요하더라구요! 처음은 그냥 점화식 'f(n) = f(n-1) + f(n-2)' 를 썼는데, 와... 50번째도 제대로 안 돌아가더라구요 ㅠㅠ 그래서 생각난 코드! def fibo2(n): f = [0, 1] for i in range(2..

Study/BOJ 2020.08.27
반응형