UVa 免費糖果 記憶化搜尋

2021-08-02 05:50:50 字數 617 閱讀 8970

在狀態複雜,資訊多且資料小的情況下可以選擇考慮記憶化搜尋.這題我就做的很zz,一開始已知想打乙個dp,

不過太麻煩了.看了解題報告之後才發現記憶化搜尋這麼簡單

#include

#include

#define fo(i,a,b) for(int i=a;i<=b;i++)

#define fod(i,a,b) for(int i=a;i>=b;i--)

using

namespace

std;

const

int n=40+5,m=20+5;

int dp[n][n][n][n],top[5],pile[5][n],

n;bool hash[n];

void init()

int dfs(int count, bool hash) else

top[i] -= 1;

}return dp[top[0]][top[1]][top[2]][top[3]] = ans;

}int main()

return

0;

}

uva 10118 免費糖果 深搜 記憶化搜尋

uva 10118 include include define n 45 define c 22 int max int a,int b int pile 4 n f n n n n n,top 4 int dfs int s,int hash c if s 5 籃子滿了,末狀態 return f...

uva 116 (記憶化搜尋)

題意 如圖,從左到右走,每次可以往左上 up 左 fo 左下 dn 走,當走到第一行或最後一行時可以如圖穿越。求一條權值最小的路徑,並列印字典序最小的路徑。解析 狀態轉移方程 dp i j min dp i 1 m m j 1 up dp i j 1 fo dp i 1 m j 1 dn 字典序最小...

uva10626(記憶化搜尋)

題目大意 一瓶可樂需要花8元,自動販售機只收1元,5元,10元。每次插入的錢只能買一瓶。給出n瓶可樂,請問最少插入幾次錢可以買到所需要數量的可樂。思路 一共有以下幾種情況 8個1元 插入8次 3個1元 乙個5元 插入4次 3個1元 乙個10元 插入4次 找5元 1個10元 插入1次 找2 1元 2個...