2017/08 6

백준 1260번 - DFS와 BFS

백준 1260번 - DFS와 BFShttps://www.acmicpc.net/problem/1260 문제그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오.단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 입력첫째 줄에 정점의 개수 N(1≤N≤1,000), 간선의 개수 M(1≤M≤10,000), 탐색을 시작할 정점의 번호 V가 주어진다.다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다.한 간선이 여러 번 주어질 수도 있는데, 간선이 하나만 있는 것으로 생각하면 된다. 입력으로 주어지는 간선은 양방향이다. 출력첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수..

아카이빙/BOJ 2017.08.13

백준 2468번 - 안전 영역

백준 2468번 - 안전 영역https://www.acmicpc.net/problem/2468 문제재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다.먼저 어떤 지역의 높이 정보를 파악한다.그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다.이 때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다.어떤 지역의 높이 정보는 행과 열의 크기가 각각 N인 2차원 배열 형태로 주어지며 배열의 각 원소는 해당 지점의 높이를 표시하는 자연수이다.( 중략 ) 자세한 내용은 2468번 링크 참조어떤 지역의 높이 정보가 주어졌을 때, 장마철에 물에..

아카이빙/BOJ 2017.08.13

백준 1697번 - 숨바꼭질

백준 1697번 - 숨바꼭질https://www.acmicpc.net/problem/1697 문제수빈이는 동생과 숨바꼭질을 하고 있다.수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다.만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오. 입력첫 번째 줄에 수빈이가 있는 위치 N과 동생이 있는 위치 K가 주어진다. 출력수빈이가 동생을 찾는 가장 빠른 시간을 출력한다. 접근BF..

아카이빙/BOJ 2017.08.13

백준 1600번 - 말이 되고픈 원숭이

백준 1600번 - 말이 되고픈 원숭이https://www.acmicpc.net/problem/1600 문제동물원에서 막 탈출한 원숭이 한 마리가 세상구경을 하고 있다. 그 녀석은 말(Horse)이 되기를 간절히 원했다.그래서 그는 말의 움직임을 유심히 살펴보고 그대로 따라 하기로 하였다. 말은 말이다. 말은 격자판에서 체스의 나이트와 같은 이동방식을 가진다.다음그림에 말(H)의 이동방법이 나타나있다. x표시한 곳으로 말이 갈 수 있다는 뜻이다.(참고로 말은 장애물을 뛰어넘을 수 있다.). x . x . x . . . x . . H . . x . . . x . x . x .근데 원숭이는 한 가지 착각하고 있는 것이 있다. 말은 저렇게 움직일 수 있지만 원숭이는 능력치가 딸려서 총 K번만 저렇게 움직일 수..

아카이빙/BOJ 2017.08.13

백준 1197번 - 최소 스패닝 트리

백준 1197번 - 최소 스패닝 트리https://www.acmicpc.net/problem/1197 문제그래프가 주어졌을 때, 그 그래프의 최소 스패닝 트리를 구하는 프로그램을 작성하시오.최소 스패닝 트리는, 주어진 그래프의 모든 정점들을 연결하는 부분 그래프 중에서 그 가중치의 합이 최소인 트리를 말한다. 입력첫째 줄에 정점의 개수 V(1≤V≤10,000)와 간선의 개수 E(1≤E≤100,000)가 주어진다.다음 E개의 줄에는 각 간선에 대한 정보를 나타내는 세 정수 A, B, C가 주어진다.이는 A번 정점과 B번 정점이 가중치 C인 간선으로 연결되어 있다는 의미이다.C는 음수일 수도 있으며, 절대값이 1,000,000을 넘지 않는다. 출력첫째 줄에 최소 스패닝 트리의 가중치를 출력한다. 접근최소 스..

아카이빙/BOJ 2017.08.10

백준 1922번 - 네트워크 연결

백준 1922번 - 네트워크 연결https://www.acmicpc.net/problem/1922 문제도현이는 컴퓨터와 컴퓨터를 모두 연결하는 네트워크를 구축하려 한다.하지만 아쉽게도 허브가 있지 않아 컴퓨터와 컴퓨터를 직접 연결하여야 한다.그런데 모두가 자료를 공유하기 위해서는 모든 컴퓨터가 연결이 되어 있어야 한다.(a와 b가 연결이 되어 있다는 말은 a에서 b로의 경로가 존재한다는 것을 의미한다. a에서 b를 연결하는 선이 있고, b와 c를 연결하는 선이 있으면 a와 c는 연결이 되어 있다.)그런데 이왕이면 컴퓨터를 연결하는 비용을 최소로 하여야 컴퓨터를 연결하는 비용 외에 다른 곳에 돈을 더 쓸 수 있을 것이다.이제 각 컴퓨터를 연결하는데 필요한 비용이 주어졌을 때 모든 컴퓨터를 연결하는데 필요한..

아카이빙/BOJ 2017.08.10