數字DP入門題 HDU 2089

2021-09-10 17:12:19 字數 1233 閱讀 9659

杭州人稱那些傻乎乎粘嗒嗒的人為62(音:laoer)。

杭州交通管理局經常會擴充一些的士車牌照,新近出來乙個好訊息,以後上牌照,不再含有不吉利的數字了,這樣一來,就可以消除個別的士司機和乘客的心理障礙,更安全地服務大眾。

不吉利的數字為所有含有4或62的號碼。例如:

62315 73418 88914

都屬於不吉利號碼。但是,61152雖然含有6和2,但不是62連號,所以不屬於不吉利數字之列。

你的任務是,對於每次給出的乙個牌照區間號,推斷出交管局今次又要實際上給多少輛新的士車上牌照了。

input

輸入的都是整數對n、m(0output

對於每個整數對,輸出乙個不含有不吉利數字的統計個數,該數值佔一行位置。

sample input

1 100 0 0

sample output

80方法一:

#include #include #include int dp[10][3];//dp[i][j],i代表數字的位數,j代表狀況

//dp[i][0],表示不存在不吉利數字

//dp[i][1],表示不存在不吉利數字,且最高位為2

//dp[i][2],表示存在不吉利數字

void init()}

int solve(int n)

a[len+1] = ans = 0;

flag = 0;

for(i=len; i>=1; i--)

return tem-ans;}

int main()

return 0;

}

方法二

數字dp(dfs)

#include #include #include using namespace std;

int bit[8], mem[8][2];

//dfs返回結果,即乙個len位的符合要求的數的個數

int dfs(int len, bool lim, bool preis_6)

if(!lim) mem[len][preis_6] = ans;

return ans;

}int sol(int n)

return dfs(len, 1, 0);

}int main()

return 0;

}

這裡主要是行進了記憶化搜尋和動態規劃的過程,這裡附上乙個鏈結,是別人講解的數字dp

HDU 2089 數字 dp 入門

可暴力,可dp。參考資料 click me 第二個版本的 參考資料 7k 的板子 第二個版本 在下面 做這道題的時候有兩個疑問 第一 既然在dp中 51 既可以看做 51 也可以看做 0051 或者 000051 那麼51這個數字會不會計算多次。第二 既然狀態轉移保證了數字的合法,在統計的時候是否還...

HDU 2089 數字dp入門

開始學習數字dp.一道昨天看過 思想的題今天打了近兩個小時.最後還是看了別人的 找bug.丟丟 傳說院賽要取消 這麼菜不出去丟人也好吧 include include include include include includeusing namespace std int n,m 數字dp 含6...

hdu 2089(數字DP模板題)

description 杭州人稱那些傻乎乎粘嗒嗒的人為62 音 laoer 杭州交通管理局經常會擴充一些的士車牌照,新近出來乙個好訊息,以後上牌照,不再含有不吉利的數字了,這樣一來,就可以消除個別的士司機和乘客的心理障礙,更安全地服務大眾。不吉利的數字為所有含有4或62的號碼。例如 62315 73...