디지털 dp 입문
9949 단어 HDU
싫다
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Problem Description
항 저 우 사람들 은 그 멍청 하고 끈적끈적 한 사람들 을 62 라 고 부른다.
항 저 우 교통 관리 국 은 택시 번호판 을 늘 리 는 경우 가 많다. 최근 에 좋 은 소식 이 나 왔 다. 앞으로 번호판 을 올 리 면 더 이상 불길 한 숫자 가 포함 되 지 않 는 다. 그러면 개별 택시 기사 와 승객 들 의 심리 적 장 애 를 없 애고 대중 에 게 더욱 안전하게 서 비 스 를 제공 할 수 있다.
불길 한 숫자 는 4 나 62 가 들 어 있 는 모든 번호 다.예 를 들 면:
62315 73418 88914
모두 불길 한 번호 에 속한다.그러나 61152 에는 6 과 2 가 들 어 있 지만 62 일련 번 호 는 아니 기 때문에 불길 한 숫자 에 속 하지 않 는 다.
당신 의 임 무 는 매번 제시 하 는 번호판 구간 번호 에 대해 서 는 교통 관리 국 이 이번 에는 실제로 몇 대의 새 택시 에 번호판 을 찍 어야 하 는 지 추정 하 는 것 입 니 다.
Input
입력 한 것 은 모두 정수 대 n, m (0 < n ≤ m < 1000000) 이 며, 모두 0 의 정수 대 를 만나면 입력 이 끝 납 니 다.
Output
모든 정수 쌍 에 대해 불길 한 숫자 가 없 는 통계 개 수 를 출력 하 는데 이 수 치 는 한 줄 의 위 치 를 차지한다.
Sample Input
1 100 0 0
Sample Output
80
디지털 dp 문제 ~
코드 는 다음 과 같 습 니 다:
1 #include "stdio.h"
2 #include "string.h"
3
4 int dp[9][11]; //dp[i][j] i j
5
6 void Init()
7 {
8 int i,j,k;
9 memset(dp,0,sizeof(dp));
10 for(j=0; j<=9; ++j)
11 dp[1][j] = 1;
12 dp[1][4] = 0;
13 for(i=2; i<=8; ++i)
14 {
15 for(j=0; j<=9; ++j)
16 {
17 if(j==4) continue;
18 for(k=0; k<=9; ++k)
19 {
20 if(j==6&&k==2) continue;
21 dp[i][j] += dp[i-1][k];
22 }
23 }
24 }
25 }
26
27 int Ans(int x)
28 {
29 int i,k;
30 int p[10];
31 for(i=1; ; i++)
32 {
33 p[i] = x%10;
34 x = x/10;
35 if(x==0) break;
36 }
37 p[i+1] = 0;
38 int ans = 0;
39 for( ; i>=1; i--) //
40 {
41 for(k=0; k<p[i]; k++)
42 {
43 if(k==4 || (p[i+1]==6 && k==2)) continue; //
44 ans += dp[i][k];
45 }
46
47 if(p[i]==4 || (p[i]==2 && p[i+1]==6))
48 break;
49 if(i==1)
50 ans += dp[i][k];
51 }
52 return ans;
53 }
54
55 int main()
56 {
57 int n,m;
58 Init();
59 while(scanf("%d%d",&n,&m),n||m)
60 printf("%d
",Ans(m)-Ans(n-1));
61 return 0;
62 }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[HDU] 4089 활성화 확률 DPdp[i][j]를 모두 i개인의 대기열인 Tomato가 j위 서버가 마비될 확률로 역추를 사용하면 우리는 상태 이동 방정식을 얻을 수 있다. i == 1 : dp[1][1] = dp[1][1] * p1 + dp[1]...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.