AC#3,其余全WA
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int k,len,num[21];ll l,r,dp[21][10];
int dfs(int x,int pre,int lm,int f){
if(!x)return 1;
if(!lm&&f&&~dp[x][pre])return dp[x][pre];
int maxc=lm?num[x]:9,ret=0;
for(int i=0;i<=maxc;i++)if(!f||abs(i-pre)>=k)ret+=dfs(x-1,i,lm&&i==maxc,f||i);
return !lm&&f?dp[x][pre]=ret:ret;
}int solve(int x){
len=0;
while(x)num[++len]=x%10,x/=10;
return dfs(len,-k,1,0);
}int main(){return memset(dp,-1,sizeof dp),cin>>l>>r>>k,cout<<solve(r)-solve(l-1),0;}