#include <bits/stdc++.h>
using namespace std;
int m;
void Add(int &a, int b) {
  a += b;
  if (a >= m) a -= m;
}
int dp[1010][110][2];
int main() {
  int n, k;
  while (scanf("%d%d%d", &n, &k, &m) == 3) {
    memset(dp, 0, sizeof(dp));
    dp[0][0][0] = 1;
    long long tmp = 1;
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < k; j++)
        for (int x = 0; x < 2; x++) {
          if (dp[i][j][x] == 0) continue;
          for (int y = 0; y < 10; y++) {
            if (i == n - 1 && y == 0) continue;
            int nj = (y * tmp % k + j) % k;
            int nx = x;
            if (nj == 0 && (y > 0 || j > 0)) nx = 1;
            Add(dp[i + 1][nj][nx], dp[i][j][x]);
          }
        }
      tmp = tmp * 10 % k;
    }
    int ans = 0;
    for (int j = 0; j < k; j++) Add(ans, dp[n][j][1]);
    printf("%d\n", ans);
  }
  return 0;
}
