본문 바로가기

백준88

[백준] 1012 - 유기농 배추, C++ https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며 해충을 잡아 먹음으로써 배추를 보호한다. 특히, 어떤 배추에 배추흰지렁이가 한 마리라도 살고 있으면 이 지렁이는 인접한 다른 배추로 이동할 수 있어, 그 배추들 역시 해충으로부터 보호받을 수 있다. ( www.acmicpc.net 본 문제는 bfs와 dfs로 풀 수 있다. 비슷한 문제가 참 많다. 그래서 문제를 많이 풀어본 사람들은 쉽게 풀 수 있다. 그러나 난.. 2020. 1. 6.
[백준] 2667 - 단지번호붙이기, C++ https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수 www.acmicpc.net 본 문제는 KOI 1996 한국정보올림피아드 초등부 1번 문제다. 입력받은 배열에서 단지를 구분하고 단지 내 집의 수를 오름차순으로 출력하는 문제다. BFS를 이용.. 2020. 1. 6.
[백준] 2606 - 바이러스, C++ (알고리즘 정리 예정) https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어진다. 이어서 그 수만큼 한 줄에 한 쌍씩 네트워크 상에서 직접 연결되어 있는 컴퓨터의 번호 쌍이 주어진다. www.acmicpc.net 본 문제는 '2004 한국정보올림피아드 지역본선 초등부 3번 문제'로 문제 분류는 '플로이드 와샬 알고리즘'이라고 되어 있는데 BFS로 풀린다. 최단 경로 알고리즘(정리 예정) 코딩 절차는 다음과 같다. 간선 정보 입력 정점 1에서 시작 감염된 컴퓨터 개수 파악 1 2 3 4 5 6 7 8 9 1.. 2020. 1. 6.
[백준] 1260 - DFS와 BFS, C++ https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다. www.acmicpc.net 본 문제는 백준 1260 문제로 DFS와 BFS를 코딩할 줄 아는지 물어보는 문제다. DFS와 BFS를 구현할 줄 알면 쉬운 문제다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 3.. 2020. 1. 6.