#include <bits/stdc++.h>
using namespace std;
int n, k;
long long m;
long long ten[1005], f[1005][105][2];
int MAIN() {
  scanf("%d%d%lld", &n, &k, &m);
  ten[0] = 1;
  for (int i = 1; i < 1005; ++i) {
    ten[i] = ten[i - 1] * 10 % k;
  }
  f[0][0][0] = 1;
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < k; ++j) {
      for (int s = 0; s < 2; ++s) {
        for (int x = 0; x < 10; ++x) {
          if (i == n - 1 && x == 0) {
            continue;
          }
          int next_k = (ten[i] * x + j) % k;
          int next_s = (s || (x != 0 && next_k == 0)) ? 1 : 0;
          f[i + 1][next_k][next_s] =
              (f[i + 1][next_k][next_s] + f[i][j][s]) % m;
        }
      }
    }
  }
  long long ans = 0;
  for (int i = 0; i < k; ++i) {
    ans = ans + f[n][i][1];
  }
  ans %= m;
  printf("%lld\n", ans);
  return 0;
}
int main() {
  ios ::sync_with_stdio(false);
  cout << fixed << setprecision(16);
  return MAIN();
}
