hdu 2089 不要62(數字dp)

2021-06-28 23:08:01 字數 1444 閱讀 7093

problem description

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

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

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

62315 73418 88914

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

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

input

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

output

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

sample input

1 100

0 0

sample output

80

參考

#include#include#include#include#include#include#include#include#include#include#define l(x) (x<<1)

#define r(x) (x<<1|1)

#define mid(x,y) ((x+y)>>1)

#define eps 1e-8

typedef __int64 ll;

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

#define mem(t, v) memset ((t) , v, sizeof(t))

#define sf(n) scanf("%d", &n)

#define sff(a,b) scanf("%d %d", &a, &b)

#define sfff(a,b,c) scanf("%d %d %d", &a, &b, &c)

#define pf printf

#define bug pf("hi\n")

using namespace std;

#define inf 0x3f3f3f3f

#define n 10

int dp[n][3];

//0 表示無不好數字

//1表示無不好數字且高位為2

//2 表示有不吉利數字

void inint()

}int solve(int x)

bit[len+1]=0;

bool flag=false;

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

return temp-ans;

}int main()

return 0;

}

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 表示不存在不吉利數字,且最...