可参考一下
```cpp
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
ll dp[14][14];
int main(void){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
string low;cin>>low;
string high;cin>>high;
int n=high.size();
low=string(n-low.size(),'0')+low;
for(int k=0;k<=9;++k){
memset(dp,-1,sizeof(dp));
function<ll(int,int,bool,bool,bool)>f=[&](int idx,int cnt,bool lim_lo,bool lim_hi,bool is_)->ll{
if(idx==n)return cnt;
if(!lim_lo&&!lim_hi&&is_&&dp[idx][cnt]!=-1)return dp[idx][cnt];
int lo=lim_lo?low[idx]-'0':0;
int hi=lim_hi?high[idx]-'0':9;
ll res=0;
for(int d=lo;d<=hi;++d){
res+=f(idx+1,cnt+(d==k&&(d||is_)),d==lo&&lim_lo,d==hi&&lim_hi,is_||d);
}
if(!lim_lo&&!lim_hi&&is_)dp[idx][cnt]=res;
return res;
};
cout<<f(0,0,true,true,false)<<" ";
}
return 0;
}
```
by jayket @ 2024-01-15 22:04:37
@[_Violet_Evergarden](/user/522067) 您记忆化搜索中存在问题
hack:
```latex
1 1111111111
```
输出为:
```latex
998765431 1011111120 887654321 887654321 887654321 887654321 887654321 887654321 887654321 887654321
```
标准输出:
```latex
987654321 1111111120 987654321 987654321 987654321 987654321 987654321 987654321 987654321 987654321
```
by xiao__xiao @ 2024-01-18 14:11:06
@[xiao__xiao](/user/1015805) 请问是哪里有问题呢
by _Violet_Evergarden @ 2024-01-18 14:24:09
@[_Violet_Evergarden](/user/522067)
```cpp
#include<bits/stdc++.h>
using namespace std;
typedef unsigned long long ll;
ll l,r;
ll f[1011][1011];
ll num[1011];
ll mod=1e9+7;
ll e;
ll dfs(ll pos,ll x,bool limit,ll sum,bool p){
if(!pos) return sum;
if(!limit&&f[pos][sum]!=-1 && p){
return f[pos][sum];
}
ll ans=0;
ll up=limit?num[pos]:9;
if(p==1){
for(ll i=0;i<=up;i++){
ans+=dfs(pos-1,x,limit&&i==num[pos],sum+(i==x),p);
}
}
else{
for(ll i=1;i<=up;i++){
ans+=dfs(pos-1,x,limit&&i==num[pos],sum+(i==x),1);
}
ans+=dfs(pos-1,x,0,0,0);
}
if(!limit && p){
f[pos][sum]=ans;
}
return ans;
}
ll solve(ll a,ll k){
e=0;
if(a==0){
num[++e]=0;
}
while(a){
num[++e]=a%10;
a/=10;
}
return dfs(e,k,1,0,0);
}
int main()
{
memset(f,-1,sizeof f);
cin>>l>>r;
ll ans=0;
for(ll i=0;i<=9;i++){
cout<<solve(r,i)-solve(l-1,i)<<" ";
ans=0;
}
return 0;
}
```
边界判断那块错了
by xiao__xiao @ 2024-01-18 18:40:27
@[xiao__xiao](/user/1015805) 谢谢大佬
已关
by _Violet_Evergarden @ 2024-01-18 19:07:14