Pagini recente » Cod sursa (job #1000725) | Cod sursa (job #924204) | Cod sursa (job #3289240) | Cod sursa (job #2805336) | Cod sursa (job #3266088)
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("diviz.in");
ofstream fout("diviz.out");
int k, a, b, i, dp[205][11][105], ans, n;
char s[205];
int main()
{
fin>>k>>a>>b>>s;
n=strlen(s);
for(i=0; i<n; i++)
if(dp[1][s[i]-'0'][(s[i]-'0')%k]==0)
dp[1][s[i]-'0'][(s[i]-'0')%k]++;
for(i=2; i<=b; i++)
{
for(int r=0; r<k; r++)
if(dp[i][s[i-1]-'0'][((r*10+(s[i-1]-'0'))%k)]==0)
for(int cif=0; cif<=9; cif++)
dp[i][s[i-1]-'0'][(r*10+(s[i-1]-'0'))%k]+=dp[i-1][cif][r];
}
for(i=a; i<=b; i++)
for(int cif=0; cif<=9; cif++)
ans+=dp[i][cif][0];
fout<<ans;
return 0;
}