題目
//不能廣搜,會超記憶體
//可以用dp思想模擬
//map 後來儲存的是 儲存由前面推來的最大的幸運總值的點
//下標從1開始,不然倍數會有問題
//ac **:
ac**
////模擬時最好不要分開,因為我分開寫錯了——求高人指點為什麼我分開寫錯掉了,明明思路是一樣的啊不能廣搜,會超記憶體
//可以用dp思想模擬
//map 後來儲存的是 儲存由前面推來的最大的幸運總值的點
//下標從1開始,不然倍數會有問題
//又錯了那麼多次。。。
//重寫。。。
//求過!!!
#include
#include
#include
using
namespace
std;
intmain()
}for(i=1;i<=n;i++)
}if(maxx1][j])maxx=map[i-1
][j];
if(maxx1])maxx=map[i][j-1
];
if(!(i==1&&j==1
)) map[i][j]+=maxx;}}
printf(
"%d\n
",map[n][m]);
}return0;
}
//錯掉的**:
//為什麼這樣分開寫錯呢不能廣搜,會超記憶體
//可以用dp思想模擬
//temp 儲存由前面推來的最大的幸運總值的點
#include
#include
#include
#include
using
namespace
std;
intmain()
}//沒有初始化?
memset(temp,-21000000,sizeof
(temp));
temp[
1][1]=map[1][1
];
//(x,y+1)
for(j=2;j<=m;j++)
temp[
1][j]=map[1][j]+temp[1][j-1
];
//(x+1,y)
for(i=2;i<=n;i++)
temp[i][
1]=map[i][1]+temp[i-1][1
];
//(x,y*k)
for(j=2;j<=m;j++)}}
for(i=2;i<=n;i++)
}//(x+1,y)
temp[i][j]=temp[i][j]>(map[i][j]+temp[i-1][j])? temp[i][j]:(map[i][j]+temp[i-1
][j]);}}
printf(
"%d\n
",temp[n][m]);
}return0;
}
HDU 2571 命運(簡單DP)
穿過幽谷意味著離大魔王lemon已經無限接近了!可誰能想到,yifenfei在斬殺了一些蝦兵蟹將後,卻再次面臨命運大迷宮的考驗,這是魔王lemon設下的又乙個機關。要知道,不論何人,若在迷宮中被困1小時以上,則必死無疑!可憐的yifenfei為了去救mm,義無返顧地跳進了迷宮。讓我們一起幫幫執著的他...
命運 HDU 2571 (簡單DP)
思路 簡單dp,起點 左上角a 1 1 終點 右下角a n m 點p i j 有多種走法選擇,下走p i 1 j 右走p i j 1 或者右走j的倍數 大於1 p i j k 我們不如倒著看,p i j 從這些數中選擇最大的值作為自己走的值 狀態轉移方程 dp i j max dp i 1 j dp...
HDU 2571 命運 (動態規劃)
穿過幽谷意味著離大魔王lemon已經無限接近了!可誰能想到,yifenfei在斬殺了一些蝦兵蟹將後,卻再次面臨命運大迷宮的考驗,這是魔王lemon設下的又乙個機關。要知道,不論何人,若在迷宮中被困1小時以上,則必死無疑!可憐的yifenfei為了去救mm,義無返顧地跳進了迷宮。讓我們一起幫幫執著的他...