본문 바로가기

Algorithm/baekjoon65

[파이썬]baekjoon 1149: RGB거리 https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net dp문제 경우는 3가지가 있다. 직전에 빨간색을 발랐을 경우, 직전에 초록색을 발랐을 경우, 직전에 파란색을 발랐을 경우 세 경우의 최소비용을 dp배열에 저장하며 계산하면 끝! n = int(input()) arr = [list(map(int,input().split()))for _ in range(n)] # 3개의 경우로 케이스를 나눔 dp = [[0]*3 for _ in .. 2023. 1. 21.
[파이썬]baekjoon 2775: 부녀회장이 될테야 https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net dp문제 문제 자체를 보고 구현하였기 때문에, 3중포문까지 나왔음.. t = int(input()) for i in range(t): k = int(input()) n = int(input()) dp = [[0]*15 for _ in range(k+1)] for i in range(15): dp[0][i] +=i for j in range(1,k+1): for x in range(n+1): for l in range(x+1): dp[j].. 2023. 1. 20.
[파이썬]baekjoon 1003: 피보나치 함수 https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제에서 주어진 fibonacci(0), fibonacci(1)에 몇번이나 재귀를 타는지 계산하는 문제 피보나치를 구현하는 문제가 아니라, 재귀로 구현된 fibonacci 함수에서 몇번이나 재귀를 타는지 게산하는 것 이므로 이에 따른 점화식을 만들어 풀어야됨! t = int(input()) for i in range(t): n = int(input()) dp = [[0,0]for _ in range(41)] dp[0][0] = 1 dp[0][1] = 0 dp[1][0] = 0 dp[1][1] .. 2023. 1. 19.
[파이썬]baekjoon 11726: 2×n 타일링 https://www.acmicpc.net/problem/11726 dp문제 전의 경우의 수와 전전의 경우의 수를 더하여 현재 경우의 수를 구하는 점화식을 구한 후, 값을 계산 n = int(input()) dp = [0]*(n+1) dp[0] = 1 dp[1] = 1 for i in range(2,n+1): dp[i] = dp[i-1] + dp[i-2] print(dp[n] % 10007) 2023. 1. 18.
[파이썬]baekjoon 5557: 1학년 https://www.acmicpc.net/problem/5557 5557번: 1학년 상근이가 1학년 때, 덧셈, 뺄셈을 매우 좋아했다. 상근이는 숫자가 줄 지어있는 것을 보기만 하면, 마지막 두 숫자 사이에 '='을 넣고, 나머지 숫자 사이에는 '+' 또는 '-'를 넣어 등식을 만들며 놀 www.acmicpc.net dp 문제 나올 수 있는 경우의 수를 넣을 dp를 만들고, 경우가 된다면 += 전의 경우의 수를 더해준다. n = int(input()) dp = [[0]*21 for _ in range(n)] arr = list(map(int,input().split())) dp[0][arr[0]] = 1 for i in range(1,n-1): for j in range(21): if dp[i-1][j.. 2023. 1. 17.
[파이썬]baekjoon 2011: 암호코드 https://www.acmicpc.net/problem/2011 2011번: 암호코드 나올 수 있는 해석의 가짓수를 구하시오. 정답이 매우 클 수 있으므로, 1000000으로 나눈 나머지를 출력한다. 암호가 잘못되어 암호를 해석할 수 없는 경우에는 0을 출력한다. www.acmicpc.net 전제를 아무것도 안들어왔을 경우 1개, 1개의 숫자만 들어왔을때 경우 1개 인덱스를 올려가며, 전의 숫자와 합쳐본 뒤, 26안에 있으며 10이상이라면 전전의 경우를 함께 더해줌 (전전의 경우를 더하는 이유는, 예를들어 25라면 2,5인 경우를 제외한 25인경우에 한번 더 경우가 생기기 때문) n = list(map(int,input())) nlength = len(n) dp = [0 for _ in range(nl.. 2023. 1. 15.