본문 바로가기

Algorithm705

[DP/동적계획법] 백준 13699 점화식 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 13699번: 점화식 다음의 점화식에 의해 정의된 수열 t(n)을 생각하자: t(0)=1 t(n)=t(0)*t(n-1)+t(1)*t(n-2)+...+t(n-1)*t(0) 이 정의에 따르면, t(1)=t(0)*t(0)=1 t(2)=t(0)*t(1)+t(1)*t(0)=2 t(3)=t(0)*t(2)+t(1)*t(1)+t(2)*t(0)=5 ... 주어진 입력 0 ≤ n www.acmicpc.net 2. 문제 풀이 t(0) = 1 t(n) = t(0)*t(n-1) + t(1)*t(n-2) + ... + t(n-1)*t(0) 위와 같은 점화식이 주어집니다. 점화식에 따라 t(n)을 구해야 합니다. 2022.02.12 - [Algorithm] - [Algorithm] .. 2022. 8. 27.
[구현/수학] 백준 18330 Petrol - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 18330번: Petrol The input consists of two lines. The first line contains an integer n (0 ⩽ n ⩽ 200), specifying the amount of petrol that will be used in the next month. The second line contains an integer k (0 ⩽ k ⩽ 360), showing the quota left in Mahya’s fuel www.acmicpc.net 2. 문제 풀이 매달 60리터는 1500 Oshloobs로 싸게 쌀 수 있습니다. 하지만, 60리터를 초과하면 2배로 비싼 3000 Oshloobs를 지불해야 합니다. .. 2022. 8. 26.
[구현/수학] 백준 20353 Atrium - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 20353번: Atrium The atrium of a traditional Roman dormus, much like the atria of today, is a perfectly square room designed for residents and guests to congregate in and to enjoy the sunlight streaming in from above. Or, in the case of Britannia, the rain streaming in fro www.acmicpc.net 2. 문제 풀이 정사각형의 면적이 입력으로 주어집니다. 이를 통해 정사각형의 둘레의 길이를 구합니다. 3. 코드 # 입력 a = int(input().. 2022. 8. 25.
[DP/동적계획법] 백준 15486 퇴사 2 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 15486번: 퇴사 2 첫째 줄에 N (1 ≤ N ≤ 1,500,000)이 주어진다. 둘째 줄부터 N개의 줄에 Ti와 Pi가 공백으로 구분되어서 주어지며, 1일부터 N일까지 순서대로 주어진다. (1 ≤ Ti ≤ 50, 1 ≤ Pi ≤ 1,000) www.acmicpc.net 2. 문제 풀이 작업 스케줄이 주어집니다. 작업 시작일과 걸리는 일 수, 수익을 고려해서 최대 수익을 계산해야 합니다. 2022.05.30 - [Algorithm] - [DP/동적계획법] 백준 14501 퇴사 - 파이썬(Python) 퇴사 1과 달리, 일 수가 15가 아니라 1,500,000입니다. 상당히 크므로 그리디가 아닌 DP로만 풀 수 있습니다. 풀이 방법은 위 글에서 참조하실 .. 2022. 8. 24.
[구현/수학] 백준 16727 ICPC - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 16727번: ICPC The first line of the input contains two space-separated integers p1 and s1, where p1 and s1 are the number of goals scored by Persepolis and Esteghlal, respectively, in the first match in which Persepolis is the home team. The second line contains two spa www.acmicpc.net 2. 문제 풀이 두 경기의 점수를 합산하고 승패를 판별하는 문제입니다. 단, 점수가 동일할 경우에는 'Away'에서 더 많은 점수를 낸 팀이 승리합니다... 2022. 8. 23.
[구현/수학] 백준 14173 Square Pasture - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 14173번: Square Pasture In the example above, the first original rectangle has corners (6,6) and (8,8). The second has corners at (1,8) and (4,9). By drawing a square fence of side length 7 with corners (1,6) and (8,13), the original areas can still be enclosed; moreover, this is www.acmicpc.net 2. 문제 풀이 두 목초지를 포함하는 '정사각형'의 목초지를 구해야 합니다. 단, 두 목초지는 서로 겹치거나 맞닿아있지 않습니다. 예제.. 2022. 8. 22.
[문자열/탐색] 백준 14425 문자열 집합 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 2. 문제 풀이 문자열로 이루어진 집합 S가 주어집니다. 이후 주어지는 문자열 중 집합 S에 포함되는 개수를 출력합니다. 3. 코드 import sys input = sys.stdin.readline # 입력 N, M = map(int, input().split()) S = set() # 집합 S for _ in range(N): S.add(input().rstrip()) # 같은 단.. 2022. 8. 21.
[구현/수학] 백준 22015 金平糖 (Konpeito) - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 22015번: 金平糖 (Konpeito) JOI 高校の生徒である葵と凛は,教師の理恵先生と一緒に 3 人で金平糖を同じ数だけ食べることにした. いま,葵は A 粒,凛は B 粒,理恵先生は C 粒の金平糖を食べた.3 人が食べた金 www.acmicpc.net 2. 문제 풀이 세 사람이 각각 음식을 먹은 개수가 입력됩니다. 다른 두 사람이 가장 많이 먹은 사람만큼 더 먹으려면, 음식이 몇 개나 더 필요한지 구해야 합니다. 3. 코드 # 입력 A, B, C = map(int, input().split()) # 출력 res = max([A, B, C])*3 - sum([A, B, C]) print(res) 세 사람이 가장 많이 먹은 사람과 동일하게 먹었을 때의 개수는, max(A.. 2022. 8. 20.
[구현/수학] 백준 15059 Hard choice - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 15059번: Hard choice The first line contains three integers Ca, Ba and Pa (0 ≤ Ca, Ba, Pa ≤ 100), representing respectively the number of meals available for chicken, beef and pasta. The second line contains three integers Cr, Br and Pr (0 ≤ Cr, Br, Pr ≤ 100), indicati www.acmicpc.net 2. 문제 풀이 제공가능한 기내식 수와 수요량을 입력받습니다. 부족한 기내식의 수를 출력해야 합니다. 3. 코드 # 입력 available = list(m.. 2022. 8. 19.