hdu 1176 免費餡餅 (dp)

2021-08-18 08:38:54 字數 997 閱讀 2342

免費的陷阱。

第一眼嘛,fj摘蘋果,但是n<=1e5,o( n^2 ),穩定tle。

那麼尋找別的思路,通過觀察發現x的範圍很小,[0.10],遂採取暴力措施,設 f[ i ][ j ] 表示第 i 秒,以(必須)站在 j 為條件時,其最多能接到的餡餅。

我起初是產生了歧義,關於這句話:因此在第一秒,他只能接到4,5,6這三個位置中其中乙個位置上的餡餅。我理解成了一般性地,在 i 點時可以選擇接 i-1,i ,i+1 。然而實際上,並不是這個意思,只是因為第0秒的時候他站在5那裡而已……

顯然可得:

f[ i ][ j ] = max+a[ i ][ j ];

a[ i ][ j ]表示第 i 秒砸在 j 上的蘋果數。

初始化f[ 0 ][ 5 ]=0;

很好,那麼我用1h+思考優化的t1就變成了乙個裸的數字三角形。

關於注意的細節:

1.多組資料。(因為沒看到這個,還想了半天為什麼多出乙個0,罰時到崩潰)

2.他開始的時候真的只站在5那個位置。

這題讓我很焦躁,故**有點醜。

code:

const

int maxn=100010;

const

int oo=-151587082;

int n;

int t;//最晚時間,方便遞推。

int a[maxn][15];

int f[maxn][15];

int ans;

void init()

work_dp();

}}void work_dp()

ans=0;

for(int i=0;i<=10;++i) ans=max(ans,f[t][i]);

printf("%d\n",ans);

}

▽==

hdu 1176 免費餡餅 dp

去年暑假的時候就看到這個題了,當時太菜了。完全不知道做。今天看到了網上的hdu dp46題,準備暑假前把這46個題搞了,正好看到了這個免費餡餅,怒a之。狀態轉移方程 dp i j max dp i j max dp i 1 j max dp i 1 j 1 dp i 1 j 1 v i j 其中dp...

HDU1176 免費餡餅 DP

problem description 都說天上不會掉餡餅,但有一天gameboy正走在回家的小徑上,忽然天上掉下大把大把的餡餅。說來gameboy的人品實在是太好了,這餡餅別處都不掉,就掉落在他身旁的10公尺範圍內。餡餅如果掉在了地上當然就不能吃了,所以gameboy馬上卸下身上的揹包去接。但由於...

HDU 1176 免費餡餅 (DP)

problem description 都說天上不會掉餡餅,但有一天gameboy正走在回家的小徑上,忽然天上掉下大把大把的餡餅。說來gameboy的人品實在是太好了,這餡餅別處都不掉,就掉落在他身旁的10公尺範圍內。餡餅如果掉在了地上當然就不能吃了,所以gameboy馬上卸下身上的揹包去接。但由於...