백준문제풀이46 4963 : 섬의 개수 (C++) 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 이번 문제는 보통 문제들과는 달리 8방향으로 이동할 수 있다. 보통 상하좌우라면 이 문제는 대각선 방향으로도 갈 수 있어서 4방향으로 더 검사를 진행해야한다. BFS방식으로 문제를 해결하였다. #include #include using namespace std; #define MAX 50 int w, h; int map[MAX][MAX]; bool visit[MAX][MAX]; int dx[8] = {1, -1, 0, 0, 1, -1, 1, -1}; int.. 2021. 2. 4. [백준] 2579번 : 계단 오르기(JAVA) https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다. 예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 75점이 된다. 계단 오르는 데는 다음과 같은 규칙이 있다. 계단은 한 번에 한 계단씩 www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 16단계 동적 계획법 1의 카테고리에 포함되어 있는 문제이다. 오랜만에 푸는 다.. 2020. 2. 25. [백준] 2580번 : 스도쿠(JAVA) https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루어진 정사각형 판 위에서 이뤄지는데, 게임 시작 전 몇 몇 칸에는 1부터 9까지의 숫자 중 하나가 쓰여 있다. 나머지 빈 칸을 채우는 방식은 다음과 같다. 각각의 가로줄과 세로줄에는 1부터 9까지의 숫자가 한 번씩만 나타나야 한다. 굵은 선으로 구분되어 있는 3 www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 15단계 백트래킹의 카테고리에 포함되어 있는 문제이다. impo.. 2020. 2. 25. [백준] 2667번 : 단지번호붙이기(JAVA) https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수 www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 28단계 DFS와 BFS의 카테고리에 포함되어 있는 문제이다. BFS로 풀었으며 DFS로.. 2020. 2. 22. [백준] 7576번 : 토마토(JAVA) https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토들의 정보가 주어진다. 즉, 둘째 줄부터 N개의 줄에는 상자에 담긴 토마토의 정보가 주어진다. 하나의 줄에는 상자 가로줄에 들어있는 토마토의 상태가 M개의 정수로 주어진다. 정수 1은 익은 토마토, 정수 0은 익지 않은 토마토, 정수 -1은 토마 www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 28단계 DFS와 BFS의 카테고리에 포함되어 있는 문제이다. .. 2020. 2. 20. [백준] 1012번 : 유기농 배추(JAVA) https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며 해충을 잡아 먹음으로써 배추를 보호한다. 특히, 어떤 배추에 배추흰지렁이가 한 마리라도 살고 있으면 이 지렁이는 인접한 다른 배추로 이동할 수 있어, 그 배추들 역시 해충으로부터 보호받을 수 있다. ( www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 28단계 DFS와 BFS의 카테고리에 포함되어 있는 문제이.. 2020. 2. 20. [백준] 2178번 : 미로 탐색(JAVA) http://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 28단계 DFS와 BFS의 카테고리에 포함되어 있는 문제이다. import java.util.*; public class Question_2178 { static int[] dx = {0, 1, 0, -1}; static int[] dy = {1, 0, -1, 0}; public static int n, m; public static int map[][];.. 2020. 2. 20. [백준] 2217번 : 로프(JAVA) https://www.acmicpc.net/problem/2217 2217번: 로프 N(1≤N≤100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하지만 여러 개의 로프를 병렬로 연결하면 각각의 로프에 걸리는 중량을 나눌 수 있다. k개의 로프를 사용하여 중량이 w인 물체를 들어올릴 때, 각각의 로프에는 모두 고르게 w/k 만큼의 중량이 걸리게 된다. 각 로프들에 대한 정보가 주어졌을 때, 이 로프들을 www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 알고리즘 분류 중 그리디 알고리즘의 카테고리에 포함되어 있는 문제이다. 주의점은 "모든 .. 2020. 2. 13. [백준] 11399번 : ATM(JAVA) https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 위의 문제는 BaekJoon Online Judge의 단계별로 풀어보기 중 18단계 그리디 알고리즘의 카테고리에 포함되어 있는 문제이다. import java.util.Scanner; import java.util.Arrays; public class Question_11399 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int .. 2020. 2. 12. 이전 1 2 3 4 ··· 6 다음