数位dp

#include
using namespace std;
typedef long long LL;
LL l,r;
LL dp[10][20][10];//dp[k][i][j]:第i位是数字j后面位数放任意数字,数字k出现的次数(k包括0)
LL f(int pos)
{
    LL s=1;
    for(LL i=1;i=1;i--)
    {
        for(LL j=0;j=1;i--) s=s*10+1;
        ans-=s;
    }
    for(LL i=num;i>=1;i--)
    {
        if(a[i]==tmp)
        {
            LL s=0;
            for(LL j=i-1;j>=1;j--) s=s*10+a[j];
            ans+=s+1;
        }
    }
    return ans;
}
int main()
{
    init();
    while(scanf("%lld%lld",&l,&r)!=EOF)
    {
        for(LL i=0;i<=9;i++)
        {
            cout<

你可能感兴趣的:(Dp)