Pagini recente » Cod sursa (job #1860954) | Cod sursa (job #808206) | Cod sursa (job #1311034) | Cod sursa (job #2118427) | Cod sursa (job #7096)
Cod sursa(job #7096)
#include <stdio.h>
#define NMAX 202
#define MOD 30103
char S[NMAX];
int viz[NMAX], x[NMAX];
int K, A, B, N;
int sol;
void check(int nr)
{
int i, t = 0;
for (i = nr; i>0; --i)
t = (t*10 + x[i]) % K;
if (!t) ++sol;
}
void back(int k, int off)
{
if (k<=N)
{
for (int i = off; i<=N; ++i)
{
x[k] = S[i];
if (A<=k && k<=B)
check(k);
back(k+1, i+1);
}
}
}
int main()
{
freopen("diviz.in", "r", stdin);
freopen("diviz.out", "w", stdout);
scanf("%d %d %d\n", &K, &A, &B);
gets(S+1);
for (N = 1; S[N]; ++N);
--N;
sol = 0;
back(1, 1);
printf("%d\n", sol % MOD);
}