[백준 2869번] 달팽이는 올라가고 싶다
·
📚 스터디/알고리즘
2869번: 달팽이는 올라가고 싶다첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)www.acmicpc.net문제 상황달팽이가 지면에서 V m 인 나무막대를 낮에는 A m 만큼 이동하고, 밤에는 B m 만큼 뒤로 미끌어진다. 단, 정상에 도달하면 미끌어지지 않는다. 이때, 달팽이가 V m 나무막대 정상에 도달하려면 며칠이 걸리는지 구하는 문제이다. 즉, 낮에 A m를 이동하고 밤에는 정상에 도달하지 않는다면, B m 를 뒤로 미끄러지고 정상에 도달하면 미끄러지지 않는 달팽이는 정상에 도달하기 위해선 며칠이 걸릴까?솔루션달팽이는 하루에 (A - B)m 만큼 이동한다. 정상에 도달하면 밤에는 0m 미끄러지고, 도달하지 않는다면, B m..
[백준 2609번] 최대공약수와 최소공배수
·
📚 스터디/알고리즘
2609번: 최대공약수와 최소공배수 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. www.acmicpc.net 문제 상황 주어지는 두 자연수에 대해 최대공약수와 최소공배수를 순서대로 구해야하는 문제이다. 솔루션 1. 최대공약수 2. 최소공배수 하나씩 구해내는 솔루션을 택했다. 1. 최대공약수 솔루션 주어진 두 자연수의 약수를 각각 모두 구했다. 약수 중 공통되는 것을 찾아 공약수 리스트를 구하고, 공약수 리스트의 최댓값을 최대공약수로 출력했다. 2. 최소공배수 솔루션 주어진 두 자연수 중 하나를 숫자 1부터 배수로 곱하며, 나머지 다른 자연수와 나누어 떨어지면, "주어진 자연수 중 하나 X 배수" 를 최소공배수로 출력했다. 즉, 최대 공..
[백준 2331번] 분해합
·
📚 스터디/알고리즘
2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 문제 상황 자연수 245의 분해합은 256(=245+2+4+5)이 된다. 자연수 256의 생성자는 245이다. 자연수 N이 주어졌을 때 N의 가장 작은 생성자를 구해내는 프로그램을 만들어보자. 즉, 자연수 N에 대해서 생성자를 만족하는 수를 구하는 것이 이번 문제의 핵심이다. 솔루션 생성자가 분해합을 하는 절차를 보고 주어진 자연수 N에 대한 생성자를 구해내는 솔루션을 적용했다. (분해합 = 245 + 2 + 4 + 5) 따라서, 자..
[백준 1018번] 체스판 다시 칠하기 (파이썬)
·
📚 스터디/알고리즘
1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제 요구사항 N X M 크기의 보드 판이 주어진다. (단, N & M >= 8) 8 X 8 크기로 임의로 잘라내서, 체스판으로 만들 것이다. 이때, 체스판 규격에 맞도록 다시 그리기 (덧칠) 을 수행하고, 최소 갯수로 다시 그릴 수 있는 경우를 구하여라. # 체스판 규격 체스판은 맨 왼쪽 위 칸이 White (흰색) 으로 시작 Black (검은색) 으로 시작 두가지의 경우가 있다. 해결 솔루션 입력받은 N X M 크기의 보드판을 8 X 8 크기로 임의의..
[백준 2775번] 부녀회장이 될테야 (파이썬)
·
📚 스터디/알고리즘
2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 이번 문제는 자료구조의 배열을 활용해 해결할 수 있는 문제이다. # 문제 해결 입력인 k층, n호의 인원 수는 관찰을 기반으로 연산 방법을 구조화시켰다. 코드로 작성은 배열의 2차원 배열을 활용해 row가 k, col은 n인 2차원 배열은 선언했다. (0, 0) (1, 0) (2, 0) - - - 공간에는 "1"을 채웠다. (0, 0) (0, 1) (0, 2) - - - 공간에는 호실 숫자만큼 채웠다. 정리하면, 문제 & 조건에 따라 확정된 정보를 정리하였다. k층의 n호의 인원은 k-1층의 1호 ~ ..