zoukankan      html  css  js  c++  java
  • bzoj 1026: [SCOI2009]windy数

    D(不)P(会)类

     1 #include<bits/stdc++.h>
     2 #define N 200005
     3 #define LL long long
     4 #define inf 0x3f3f3f3f
     5 #define ls tr[x][0]
     6 #define rs tr[x][1]
     7 using namespace std;
     8 inline int ra()
     9 {
    10     int x=0,f=1; char ch=getchar();
    11     while (ch<'0' || ch>'9') {if (ch=='-') f=-1; ch=getchar();}
    12     while (ch>='0' && ch<='9') {x=x*10+ch-'0'; ch=getchar();}
    13     return x*f;
    14 }
    15 int f[12][10];
    16 int dp[12];
    17 void init()
    18 {
    19     memset(f,0,sizeof(f));
    20     for (int i=0; i<10; i++) f[1][i]=1;
    21     for (int i=2; i<=10; i++)
    22     {
    23         for (int j=0; j<10; j++)
    24         {
    25             for (int k=0; k<10; k++)
    26             {
    27                 if (abs(j-k)>=2) 
    28                     f[i][j]+=f[i-1][k];
    29             }
    30         }
    31     }
    32 }
    33 int len;
    34 int solve(int a)
    35 {
    36     len=0;
    37     while (a)
    38     {
    39         dp[len++]=a%10;
    40         a/=10;
    41     } 
    42     int ans=0;
    43     for (int i=1; i<len; i++)
    44         for (int j=1; j<10; j++)
    45             ans+=f[i][j];
    46     for (int i=1; i<dp[len-1]; i++)
    47         ans+=f[len][i];
    48     for (int i=len-1; i>=1; i--)
    49     {
    50         for (int j=0; j<dp[i-1]; j++)
    51             if (abs(j-dp[i])>=2)
    52                 ans+=f[i][j];
    53         if (abs(dp[i]-dp[i-1])<2) break;
    54     }
    55     return ans;
    56 }
    57 int main()
    58 {
    59     init(); int a,b;
    60     while (~scanf("%d%d",&a,&b))
    61     {
    62         cout<<solve(b+1)-solve(a);
    63     }
    64     return 0;
    65 }
  • 相关阅读:
    java 文件下载遇到的数个坑
    table标签 在谷歌和ie浏览器下不同的表现效果
    Java Day 19
    Java Day 18
    Java Day 17
    Java Day 16
    Java Day 15
    Java Day 14
    Java Day 13
    Java Day 12
  • 原文地址:https://www.cnblogs.com/ccd2333/p/6482393.html
Copyright © 2011-2022 走看看