題意:給定乙個區間,求這個區間內不含4和62(6,2連續)的數的個數。
分析:數字dp,此題可由低位遞推高位,dp[i][0]表示i位數無不吉利數字,dp[i][1]表示i位數無不吉利數字且最高位為2,dp[i][2]表示i位數有不吉利數字。
#include#include#include#include#include#include#include#include#include#include#define inf 10000000
#define pi acos(-1.0)
#define eps 1e-8
#define seed 131
using namespace std;
typedef pairpii;
typedef unsigned long long ull;
typedef long long ll;
const int maxn=100005;
int n,m;
int dp[10][3];
int solve(int x);
//dp[i][0]:i位無不吉利
//dp[i][1]:i位無不吉利,最高位為2
//dp[i][2]:i位有不吉利
int main()
while(~scanf("%d%d",&n,&m))
return 0;
}int solve(int x)//求得0-(x-1)滿足條件的數的個數
digit[cnt+1]=0;
int ans=0;
bool flag=false;
for(int i=cnt;i>0;i--)//從高位到低位依次比較
if(digit[i]==4||(digit[i+1]==6&&digit[i]==2))
flag=true;
}return xx-ans;
}
HDU2089 不要62 數字DP
problem description 杭州人稱那些傻乎乎粘嗒嗒的人為62 音 laoer 杭州交通管理局經常會擴充一些的士車牌照,新近出來乙個好訊息,以後上牌照,不再含有不吉利的數字了,這樣一來,就可以消除個別的士司機和乘客的心理障礙,更安全地服務大眾。不吉利的數字為所有含有4或62的號碼。例如 ...
Hdu2089 不要62 數字dp
include includeint dp 10 3 dp i 0 為位數小於等於i且不含62也不含4的數字的個數 dp i 1 為位數為i且首位為2且不含62也不含4的數字的個數 dp i 2 為位數小於等於i且含62或4的數字的個數 int digit 10 void er int wei in...
hdu 2089 不要62 (數字dp)
思路 用變數記錄吉利數,和最高位為2的吉利數還有不是吉利數的個數。code include include includeusing namespace std int dp 10 3 dp i j i表示位數,j表示狀態 dp i 0 表示不存在不吉利數字 dp i 1 表示不存在不吉利數字,且最...