목록99클럽 (63)
원하는 것은 뭐든지
문제 풀이 예상 시간보다 지나가면 다른 해석을 보고 있습니다. 문제풀이문제 해석1. N x M 크기의 배열이 주어진다.2. 로봇은 좌, 우, 아래 로만 이동 가능하다.3. 한번 탐사한 지역은 다시 가지 않는다.4. 각 배열에는 탐사가치가 있다.5. 좌측 최상단에서 시작하여 우측 최하단으로 이동할 때, 이동한 경로의 탐사가치가 최대가 되도록 해라문제 풀이1. bfs, dfs는 n, m 범위에 따라 불가능하다고 판단.2. 위로 올라가지 못하므로 한 줄씩 해결해야함3. 배열 위치에 올 수 있는 방법은 좌측에서 오거나 위에서 오거나 우측에서 오거나 세 가지이다.4. 하지만 좌측, 우측을 함께 생각할 필요는 없다.5. 첫 번째 줄은 좌측상단에서 시작하여 오른쪽으로만 갈 수 있으니 누적합 해준다.6. 다음 줄부터는..
문제 풀이 예상 시간보다 지나가면 다른 해석을 보고 있습니다. 문제풀이문제 해석1. 크기가 NxN인 도시에 집과 치킨집의 위치가 입력으로 주어진다.2. 치킨집의 매출을 위해서 M개만 남기고 모두 폐업시키려고 한다.3. 각 집에서 치킨집과의 거리가 가장 짧을 경우를 찾아라문제 풀이1. 빈칸을 받을 필요 없이 집과 치킨집의 위치를 담는다.2. 각 집과 치킨집과의 거리를 담는다 (생략가능)3. 치킨집 M개를 선택하는 로직을 dfs로 구현한다.4. 치킨집을 M개 다 골랐을 때 거리가 최소가 되는 경우를 찾는다. ( 2번을 생략한 경우 이때 계산해 주어야 한다.)5. 자세한 것은 코드를 참고소스코드package online.judge.baekjoon;import java.io.BufferedReader;impor..
문제 풀이 예상 시간보다 지나가면 다른 해석을 보고 있습니다. 문제 풀이문제 해석1. 입력으로 주어지는 n 만큼의 길이가 1인 삼각형이 거꾸로 있고 그에 맞춰 사다리꼴이 되도록 하는 삼각형이 생긴다.2. 즉 윗변의 길이는 n이고 밑 변의 길이는 n+1이다.3. 또 다른 입력으로 윗변과 맞닿도록 생성되는 삼각형의 위치가 주어진다.4. 예를 들어 n이 4이고 다른 입력이 [1,1,0,1] 이면 뒤집힌 삼각형 중 세 번째 삼각형만 제외하고 마름모가 완성된다.5. 이렇게 만들어진 모양을 삼각형 또는 그 삼각형 두개를 이어 붙인 마름모를 사용해서 빈 곳 없이 채우려고 할 때 경우의 수를 10007로 나눈 나머지를 출력해라문제 풀이1. dp로 풀이하면 된다.2. 두가지로 나누어서 생각하면 그나마 이해하기 수월하다...
문제 풀이 예상 시간보다 지나가면 다른 해석을 보고 있습니다. 문제풀이문제 해석1. 우주 탐사선 ana호를 타고 모든 행성을 탐사하는데 걸리는 최소 시간을 계산2. 행성의 개수와 출발하는 행성의 번호가 주어짐3. 다시 시작 행성으로 돌아올 필요 없고 방문했던 행성도 중복해서 갈 수 있음4. 모든 행성을 탐험하는데 걸리는 최소시간을 출력하면 됨문제 풀이1. 하나의 행성에서 각 해성까지 가는 최소 거리를 구한다.2. 방법으로는 N이 10으로 작기 때문에 플로이드-와샬 알고리즘을 사용한다.3. 그 후 dfs를 돌려서 완전탐색을 실시하여 가장 작은 값을 answer에 담아 출력한다.소스코드package online.judge.baekjoon;import java.io.BufferedReader;import ja..