#include <stdio.h>
#include <string.h>
const long long oo = 1000000000000000000LL;
struct point
{
    long long a, b;
}f[20][180][1100], ans;
long long l1, r1, l, i, j, r, k, ls, rs, ws[22], h;
void merge(point &x, point &y)
{
    y.a = x.a + y.a;
    y.b = x.b;
}
void find(int h1, int sum, int rem)
{
    if (f[h1][sum][rem].a != -1return;
    f[h1][sum][rem].a = 0;
    f[h1][sum][rem].b = rem;
    if ((h1 == 0) || (h1 == 1))
    {
    if (sum + rem >= k)
    {
        f[h1][sum][rem].a = 1;
        f[h1][sum][rem].b = 0;
    } else
    {
        f[h1][sum][rem].a = 0;
        f[h1][sum][rem].b = sum + rem;
    }
    return;
    }
    for (int i1 = 0; i1 <= 9; ++i1)
    {
    find(h1 - 1, sum + i1, f[h1][sum][rem].b);
    merge(f[h1 - 1][sum + i1][f[h1][sum][rem].b], f[h1][sum][rem]);
    }
}
int main()
{
    freopen("input.txt""r", stdin);
    freopen("output.txt""w", stdout);
    memset(f, -1sizeof(f));
    for (ws[1] = 1, i = 2; i <= 20; ws[i] = ws[i - 1] * 10, ++i);
    scanf("%I64d%I64d%I64d", &l, &r, &k);
    if (r == oo) r--;
    for (h = -1, i = 18, l1 = l, r1 = r; i >= 1; --i)
    {
    if ((h == -1) && ((l1 / ws[i]) != (r1 / ws[i]))) h = i;
    ls += (l1 % ws[i + 1]) / ws[i], rs += (r1 % ws[i + 1]) / ws[i];
    }
    find(0, ls, 0);
    ans = f[0][ls][0];
    if (h == -1
    {
    printf("%I64d\n", ans.a);
    return 0;
    }
    for (i = 1; i < h; ++i)
    {
    ls -= (l % ws[i + 1]) / ws[i];
    for (j = (l % ws[i + 1]) / ws[i] + 1; j <= 9; ++j)
    {
        find(i, ls + j, ans.b);
        merge(f[i][ls + j][ans.b], ans);
    }
    }
    ls -= (l % ws[h + 1]) / ws[h];
    for (i = (l % ws[h + 1]) / ws[h] + 1; i <= (r % ws[h + 1]) / ws[h] - 1; ++i)
    {
    find(h, ls + i, ans.b);
    merge(f[h][ls + i][ans.b], ans);
    }
    ls += (r % ws[h + 1]) / ws[h];
    for (i = h - 1; i >= 1; --i)
    {
    for (j = 0; j <= (r % ws[i + 1]) / ws[i] - 1; ++j)
    {
        find(i, ls + j, ans.b);
        merge(f[i][ls + j][ans.b], ans);
    }
    ls += (r % ws[i + 1]) / ws[i];
    }
    find(0, ls, ans.b);
    merge(f[0][ls][ans.b], ans);
    printf("%I64d", ans.a);
    return 0;
}