題目鏈結:[kuangbin帶你飛]專題十五 數字dp d - bomb
求1~n的範圍裡含有49的數字的個數。
記憶化搜尋dfs(len, pre, flag)
len表示當前位數
pre==0 不含49且上一位不為4
pre==1 不含49且上一位為4
pre==2 含49
flag表示是否可以任意取值(判斷範圍)。
即可。
#include
#include
#include
#include
#include
#include
using
namespace
std;
#define ll long long
ll dp[20][3];
int dis[20];
ll dfs(int len, int pre, bool flag)
if(!flag)
dp[len][pre] = ans;
return ans;
}ll solve(ll n)
return dfs(len-1, 0, 1);
}int main()
HDU 3555 Bomb 基礎數字dp
題意大致就是說給你乙個數n,要你求0 n之間含有49的數的個數 理解題意很簡單下面就直接貼 了 include include include includeusing namespace std int64 dp 21 4 int a 1000 void init int main int g 0...
hdu 3555 Bomb(數字dp初學)
題意 給定乙個n,求0到n範圍內不含49的數的個數 思路 這題是最基礎的數字dp,可模擬hdu2089 不要62,事實上,這題比不要62更簡單一些。首先,還是預處理打表,用乙個二維陣列來儲存狀態,dp i j 表示i位的滿足狀態j的數的個數,j有三種狀態,0 不含49的,1 不含49的,但是首位是9...
數字DP入門之hdu 3555 Bomb
hdu 3555 bomb 題意 在1 n 1 n 2 63 1 範圍內找出含有 49 的數的個數 與hdu 2089 不要62的區別 2089是找不不含 4 和 62 的區間範圍內的數,此題是含有 正好相反,對於 不要62 只是用第二位表示首位數字,這一題呢?看轉化 易知一定要要知道首位是9的個數...