알고리즘 정복하기! 64

백준 11123번 Python / DFS 문제풀이 GitHub https://github.com/Seokii/baekjoon GitHub - Seokii/baekjoon: Daily Commit for Baekjoon Daily Commit for Baekjoon. Contribute to Seokii/baekjoon development by creating an account on GitHub. github.com 깊이 우선 탐색(DFS) https://seokii.tistory.com/30 [알고리즘] 깊이 우선 탐색 (DFS, Depth-First Search)이란? 깊이 우선 탐색(DFS, Depth-First Search) - 그래프 탐색에서 루트 노드에서 시작해 다음 분기로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 - 재귀.. 알고리즘 정복하기!/백준 문제풀이 2022. 3. 1.
백준 11501번 Python / Greedy 문제풀이 GitHub https://github.com/Seokii/baekjoon GitHub - Seokii/baekjoon: Daily Commit for Baekjoon Daily Commit for Baekjoon. Contribute to Seokii/baekjoon development by creating an account on GitHub. github.com 문제 링크 https://www.acmicpc.net/problem/11501 11501번: 주식 입력의 첫 줄에는 테스트케이스 수를 나타내는 자연수 T가 주어진다. 각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고, 둘째 줄에는 날 별 주가를 나타 www.acmicpc.n.. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 28.
백준 1461번 Python / Greedy 문제풀이 GitHub https://github.com/Seokii/baekjoon GitHub - Seokii/baekjoon: Daily Commit for Baekjoon Daily Commit for Baekjoon. Contribute to Seokii/baekjoon development by creating an account on GitHub. github.com 문제 링크 https://www.acmicpc.net/problem/1461 1461번: 도서관 세준이는 도서관에서 일한다. 도서관의 개방시간이 끝나서 세준이는 사람들이 마구 놓은 책을 다시 가져다 놓아야 한다. 세준이는 현재 0에 있고, 사람들이 마구 놓은 책도 전부 0에 있다. 각 책 www.acmicpc.net 풀이 n,m .. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 26.
백준 15903번 Python / Greedy 백준 문제풀이 GitHub https://github.com/Seokii/baekjoon GitHub - Seokii/baekjoon: Daily Commit for Baekjoon Daily Commit for Baekjoon. Contribute to Seokii/baekjoon development by creating an account on GitHub. github.com 문제 링크 https://www.acmicpc.net/problem/15903 15903번: 카드 합체 놀이 첫 번째 줄에 카드의 개수를 나타내는 수 n(2 ≤ n ≤ 1,000)과 카드 합체를 몇 번 하는지를 나타내는 수 m(0 ≤ m ≤ 15×n)이 주어진다. 두 번째 줄에 맨 처음 카드의 상태를 나타내는 n개의 자연수 .. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 25.
백준 16435번 Python / Greedy 백준 문제풀이 Github https://github.com/Seokii/baekjoon GitHub - Seokii/baekjoon: Daily Commit for Baekjoon Daily Commit for Baekjoon. Contribute to Seokii/baekjoon development by creating an account on GitHub. github.com 문제 링크 https://www.acmicpc.net/problem/16435 16435번: 스네이크버드 첫 번째 줄에 과일의 개수 N (1 ≤ N ≤ 1,000) 과 스네이크버드의 초기 길이 정수 L (1 ≤ L ≤ 10,000) 이 주어집니다. 두 번째 줄에는 정수 h1, h2, ..., hN (1 ≤ hi ≤ 10,00.. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 25.
백준 1343번 Python / Greedy 문제 링크 https://www.acmicpc.net/problem/1343 1343번: 폴리오미노 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다. www.acmicpc.net 풀이 board = input() board = board.replace('XXXX','AAAA') board = board.replace('XX', 'BB') if 'X' in board: print(-1) else: print(board) 입력 받은 문자열에 'XXXX'이 존재한다면 'AAAA'로 변경. 입력 받은 문자열에 'XX'이 존재한다면 'BB'로 변경. 전부 진행하고 X가 남아 있으면 -1을 출력. 아니라면 그대로 출력. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 21.
백준 3135번 Python / Greedy 문제 링크 https://www.acmicpc.net/problem/3135 3135번: 라디오 첫 줄엔 정수 A와 B가 주어진다 (1 ≤ A, B < 1000, A ≠ B). 다음 줄엔 정수 N이 주어진다 (1 ≤ N ≤ 5). 다음 N개의 줄엔 미리 지정되어 있는 주파수가 주어진다 (주파수는 1000 보다 작다). www.acmicpc.net 풀이 a,b = map(int, input().split()) n = int(input()) favorites = [] for _ in range(n): favorites.append(int(input())) how_many1 = [] how_many2 = [] how_many1.append(abs(a-b)) for i in range(len(favorites).. 알고리즘 정복하기!/백준 문제풀이 2022. 2. 19.
백준 2407번 Python / Math 문제 링크 https://www.acmicpc.net/problem/2407 2407번: 조합 n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n) www.acmicpc.net 풀이 import math n,m = map(int, input().split()) answer = math.factorial(n)//(math.factorial(m)*math.factorial(n-m)) print(answer) math 라이브러리를 사용해 팩토리얼을 계산 해 아래와 같은 조합 공식에 대입해 계산해주었습니다. $$nC_{r}=\dfrac{n!}{r!\left( n-r\right) !}$$ 알고리즘 정복하기!/백준 문제풀이 2022. 2. 18.