From 194d453510e89b1fb61a913a8a2a7c14c1430a5e Mon Sep 17 00:00:00 2001 From: HS980924 Date: Mon, 8 May 2023 12:50:23 +0900 Subject: [PATCH 1/2] Upload BOJ silver-1 DP --- ...0_\354\265\234\355\230\225\354\210\234.py" | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 "230508 Baek_Joon silver-1 \354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260/B#11052_\354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260_\354\265\234\355\230\225\354\210\234.py" diff --git "a/230508 Baek_Joon silver-1 \354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260/B#11052_\354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260_\354\265\234\355\230\225\354\210\234.py" "b/230508 Baek_Joon silver-1 \354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260/B#11052_\354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260_\354\265\234\355\230\225\354\210\234.py" new file mode 100644 index 0000000..e0692d8 --- /dev/null +++ "b/230508 Baek_Joon silver-1 \354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260/B#11052_\354\271\264\353\223\234\352\265\254\353\247\244\355\225\230\352\270\260_\354\265\234\355\230\225\354\210\234.py" @@ -0,0 +1,26 @@ +# 내 풀이 +N = int(input()) +cards = list(map(int, input().split())) +dp = [0]*(N+1) + +for i in range(1,N+1): + tmp = [] + for j in range(N//2+1): + tmp.append(dp[i-j]+dp[j]) + tmp.append(cards[i-1]) + dp[i] = max(tmp) + +print(dp[N]) + +# 다른 사람 풀이 +import sys +input=sys.stdin.readline +print=sys.stdout.write +N = int(input()) +dp = [0]*(N+1) + +for i,v in enumerate(map(int, input().split()), 1): + dp[i] = v + dp[i] = max([dp[j]+dp[i-j] for j in range(0,i//2+1)]) + +print(str(dp[-1])) \ No newline at end of file From 65e20264ff852bc90bb85baee176ffa5744d58ce Mon Sep 17 00:00:00 2001 From: HS980924 Date: Wed, 14 Jun 2023 12:02:33 +0900 Subject: [PATCH 2/2] =?UTF-8?q?Upload=20BOJ=20Gold-5=20DP=20=EB=94=94?= =?UTF-8?q?=EC=A0=80=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0_\354\265\234\355\230\225\354\210\234.py" | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 "230607 Baek_Joon gold-5 \353\224\224\354\240\200\355\212\270/B#17953_\353\224\224\354\240\200\355\212\270_\354\265\234\355\230\225\354\210\234.py" diff --git "a/230607 Baek_Joon gold-5 \353\224\224\354\240\200\355\212\270/B#17953_\353\224\224\354\240\200\355\212\270_\354\265\234\355\230\225\354\210\234.py" "b/230607 Baek_Joon gold-5 \353\224\224\354\240\200\355\212\270/B#17953_\353\224\224\354\240\200\355\212\270_\354\265\234\355\230\225\354\210\234.py" new file mode 100644 index 0000000..9e41efe --- /dev/null +++ "b/230607 Baek_Joon gold-5 \353\224\224\354\240\200\355\212\270/B#17953_\353\224\224\354\240\200\355\212\270_\354\265\234\355\230\225\354\210\234.py" @@ -0,0 +1,24 @@ +# Upload BOJ Gold-5 DP 디저트 +import sys +input = sys.stdin.readline + +N, M = map(int,input().split()) +info = [list(map(int,input().split())) for _ in range(M)] +dp = [ [0 for _ in range(N)] for _ in range(M)] + +for i in range(M): + dp[i][0] = info[i][0] + +for day in range(1,N): + for dessert in range(M): + for i in range(M): + if i == dessert: + dp[dessert][day] = max(dp[dessert][day], info[dessert][day]//2 + dp[i][day-1]) + else: + dp[dessert][day] = max(dp[dessert][day], info[dessert][day] + dp[i][day-1]) + +result = 0 +for i in range(M): + result = max(result,dp[i][-1]) + +print(result) \ No newline at end of file