알고리즘/BaekJoon 114

백준 15655 : N과 M(6)

문제 링크입니다 https://www.acmicpc.net/problem/15655 15655번: N과 M (6) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 고른 수열은 오름차순이어야 한다. www.acmicpc.net N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 단, N개의 자연수는 모두 다른 수입니다. 조건은 다음과 같고, - N개의 자연수 중에서 M개를 고른 수열 - 고른 수열은 오름차순이어야 한다. '15654번 N과 M(5)' 문제(https://seokeeee.tistory.co..

백준 15654 : N과 M(5)

문제 링크입니다 https://www.acmicpc.net/problem/15654 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 단, N개의 자연수는 모두 다른 수입니다. 조건은 다음과 같고, - N개의 자연수 중에서 M개를 고른 수열 중복되는 수열을 여러 번 출력하면 안되고 수열은 사전 순으로 증가하는 순서로 출력해야 합니다. 문제에서 예제 출력을 보면 같은 수를 중복해서 고르면 안되므로..

백준 15652 : N과 M(4)

문제 링크입니다 https://www.acmicpc.net/problem/15652 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. www.acmicpc.net 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 조건은 다음과 같고, - 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 - 같은 수를 여러 번 골라도 된다. - 고른 수열은 비내림차순이어야 한다. → 길이가 K인 수열 A가 A1 ≤ A2 ≤ ... ≤ AK-1 ≤ AK를 만족하면, 비내림차순이라고 한다. 재귀..

백준 15651 : N과 M(3)

문제 링크입니다 https://www.acmicpc.net/problem/15651 15651번: N과 M (3) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. www.acmicpc.net 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 조건은 다음과 같고, - 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 - 같은 수를 여러 번 골라도 된다. 재귀 호출을 통해 중복을 허용하고 M개를 고를 때마다 수열을 출력해주는 방식으로 문제를 해결했습니다. [소스코드] 1 2 3 4 5 6 7 8 9 10 ..

백준 15650 : N과 M(2)

문제 링크입니다 https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. www.acmicpc.net 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 조건은 다음과 같고, - 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 - 고른 수열은 오름차순이어야 한다. 재귀 호출을 통해 항상 고른 수보다 큰 수(오름차순이기 때문)를 중복없이 M개를 고를 때마다 수열을 출력해주는 방식으로 문제를 해결했습니다. [소스코드]..

백준 15649 : N과 M(1)

문제 링크입니다 https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. www.acmicpc.net 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 문제였습니다. 조건은 다음과 같고, - 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 재귀 호출을 통해 M개를 고를 때마다 수열을 출력해주는 방식으로 문제를 해결했습니다. [소스코드] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ..

백준 11048 : 이동하기

문제 링크입니다 https://www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 현재 (1, 1)에 있고, (N, M)으로 이동하려고 한다. 준규가 (r, c)에 있으면, (r+1, c), (r, c+1), (r+1, c+1)로 이동할 수 있고, 각 방을 방문할 때마다 방에 놓여져있는 사탕을 모두 가져갈 수 있다. 또, 미로 밖으 www.acmicpc.net 준규가 갇힌 N×M 미로가 주어집니다. 각 칸에는 사탕이 놓여 있을 때, (1, 1)부터 (N, M)까지 이동할 때 ..

백준 15558 : 점프 게임

문제 링크입니다 https://www.acmicpc.net/problem/15558 15558번: 점프 게임 첫째 줄에 N과 k가 주어진다. (1 ≤ N, k ≤ 100,000) 둘째 줄에는 왼쪽 줄의 정보가 주어진다. i번째 문자가 0인 경우에는 위험한 칸이고, 1인 경우에는 안전한 칸이다. 셋째 줄에는 오른쪽 줄의 정보가 주어지고, 각 문자의 의미는 왼쪽 줄의 의미와 동일하다. 왼쪽 줄의 1번 칸은 항상 안전한 칸이다. www.acmicpc.net 총 2개의 줄로 나누어진 지도가 주어지고, 게임을 진행할 때, 게임을 클리어 할 수 있는지, 없는지 구하는 문제였습니다. 이동이 가능한 경우 큐에 넣고, 가능하지 않으면 다음 경우를 보는 방식의 BFS를 통해 구현했고, 자세한 문제 해결 절차는 다음과 같습..

백준 6087 : 레이저 통신

문제 링크입니다 https://www.acmicpc.net/problem/6087 6087번: 레이저 통신 문제 크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다. 'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 설치해야 하는 거울 개수의 최솟값을 구하는 프로그램을 작성하시오. 레이저로 통신한다는 것은 두 칸을 레이저로 연결할 수 있음을 의미한다. 레이저는 C에서만 발사할 수 있고, 빈 칸에 거울('/', '\')을 설치해서 방향을 90도 회전시킬 수 있다. www.acmicpc.net 각 칸이 빈 칸이거나 벽이고, 레이저가 두 개 놓여져 있는 지도가 주어졌을 때, 두 레이저를 연결하기 위해 설치해야 하..