336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

음.... DP 문제였다.


삼각형 맨 윗부분에서 시작해서 맨 아래 부분까지 도달할 때 각 인자끼리 더한 값이 제일 큰 값을 구하는 것이었다.


   1

  2 3

 4 5 6


인 모양으로 있다면 


2, 3은 1에서 값을 받을 수 있고, 인접한 곳에서 값을 얻어 올 수 있다. 

그러면 5의 경우에는 2, 3 에서 값을 얻어올 수 있는 경우가 된다 


     1

    2 3

   4 5 6

  7 8 9 10


인 경우에 8은 4 5 / 9는 5 6 에서 값을 얻어 올 수 있게 된다. 

각 양끝에서는 값이 내려오는 곳은 7<-4 / 10<-6 내려 올 수 있고 양 끝 값이 아닌 안쪽에 있는 값은 2가지 경우에서 값을 가져 올 수 있게 된다.


값을 내려 받을 때 그 중 최대 값만 얻어오면 된다. 


f(r%2Cc)%3Df(r%2Cc)%2BM(f(r-1%2Cc-1)%2Cf(r-1%2Cc))%20 

위 식이 만들어졌고 이에 따라 코드를 작성하였다. (M(a,b)은 둘(a,b) 중 최대값)



'PSNote > Problem Solving' 카테고리의 다른 글

[BOJ-5679]Hailsone Sequence  (0) 2017.07.17
[BOJ-2583]영역구하기  (0) 2017.07.17
[BOJ-11501]주식  (0) 2017.07.17
[BOJ-2164]카드2  (0) 2017.07.17
[BOJ-1261]알고스팟  (0) 2017.07.17

+ Recent posts