본문 바로가기
알고리즘/소스코드

KOREATECH 1011: 징검다리

by cjw.git 2020. 12. 9.

Link : judge.koreatech.ac.kr/problem.php?id=1011


Python

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from sys import stdin
 
testcase = int(stdin.readline().strip())
 
while testcase:
    length = int(stdin.readline().strip())
    dp = [0* length
    if length > 2:
        arr = list(map(int, stdin.readline().strip().split(' ')))
        for _ in range(3):
            dp[_] = arr[_]
 
        for idx in range(3len(arr)):
            dp[idx] = min(dp[idx-1], dp[idx-2], dp[idx-3]) + arr[idx]
 
        print(min(dp[-1],dp[-2],dp[-3]))
        testcase-=1
    else:
        try:
            arr = list(map(int, stdin.readline().strip().split(' ')))
        except Exception: pass
        finally:
            print(0)
cs

FeedBack

  1. try except 문구보다 좀 더 좋은 처리방법을 생각해야 함.

 

 

 

cjw.git@gmail.com

'알고리즘 > 소스코드' 카테고리의 다른 글

KOREATECH 1017: 돈을 줍자  (0) 2020.12.09
KOREATECH 1015: 괄호 짝  (0) 2020.12.09
KOREATECH 1010: 접두 소수  (0) 2020.12.09
KOREATECH 1007: 유일한 수  (0) 2020.12.08
KOREATECH 1004: 뒤집어 더하기  (0) 2020.12.08

댓글