- 문제링크 : http://icpcres.ecs.baylor.edu/onlinejudge/index.php?option=com_onlinejudge&Itemid=8&category=3&page=show_problem&problem=44
- 의 견 : Dynamic Programming을 배웠고, 사용한다면 쉬운 문제, 하지만 단순히 for 루프를 이용하여 6중 for 루프를 사용한다면 time exceed를 면할 수 없을 것입니다.
DP 방법은 배열을 사용할 때 [ 시작 x 인덱스 ][ 시작 y 인덱스 ][ 끝 x 인덱스 ][ 끝 y 인덱스 ]로 의미를 부여하여 대상 값들을 계산 후 업데이트하고 재사용합니다.
- 소스
"Algorithm" 분류의 다른 글
| Algorithm Traning Book - 다섯번째 문제 (0) | 2008/06/15 |
| Algorithm Traning Book - 세 번째 문제 (0) | 2008/06/10 |
| Algorithm Traning Book - 두 번째 문제 (0) | 2008/06/09 |
| 3n+1 Problem (0) | 2008/02/17 |
| The Blocks Problem (0) | 2008/02/17 |
트랙백 주소 :: http://www.filewiki.net/tc/trackback/6
-
Subject: Maximum sum
Tracked from 티스토리 지점 2008/04/09 14:22 삭제문제 페이지 귀차니스트 님이 푸신 답을 조금 개선해 봤다. 자동채점 기준으로 수행 시간이 0.4초 정도 줄었다. #include <stdio.h> short m[101][101][101][101]={}; int main(void) { int rsum, lsum, nrsm, nlsm; int si, sj, ei, ej, size,i,j; int maxsum = -2000000; scanf("%d", &size); for (i=1; i<=size; i+..


댓글을 달아 주세요