ここに spoj problem problemへのリンクがあります
私は Dp 問題を解く初心者です。
いくつかのパターンを見つけましたが..しかし、効率的な方法でそれを置くことができません..
私は素朴なアプローチを試みましたが、これは確かに TLE を与えます。
void cal(int *a,int n)
{
while(n!=0)
{
a[n%10]++;
n/=10;
}
}
void print(int *a)
{
int ans=0;
for(int i=1;i<=9;i++)
{
ans+=i*a[i];
}
printf("%d\n",ans);
}
そして、より大きな数からより小さな数の合計を減算します..そして、下限の桁数の合計を追加します..つまり、a = 12 b = 15の場合
合計1=51 合計2=66
ans=66-51+(12桁の和=1+2)=15+3=18
どんな助けでも有益です..事前に感謝します。