#include <bits/stdc++.h>
using namespace std;
long long x, y, z;
long long gcd(long long x, long long y) { return y ? gcd(y, x % y) : x; }
inline void Return(string s) {
  puts(s.c_str());
  exit(0);
}
const int P = 998244353;
int ans = 0;
int p[100000], cnt;
int main() {
  cin >> x >> y >> z;
  if (x == 1 && y == 1 && z == 1) Return("inf");
  if (x == y && y != z) Return("0");
  if (x == y && y == z) Return("2");
  if (y == z) {
    puts("1");
    return 0;
  }
  if ((x > y) || (y > z)) {
    puts("0");
    return 0;
  }
  while (z) p[++cnt] = z % y, z /= y;
  if (x == 1) {
    int z = 0;
    for (int i = 1; i <= cnt; i++) z += p[i];
    if (z == 1 && p[1] != 1) {
      puts("1");
      return 0;
    }
  }
  for (int i = 1; i <= cnt; i++) {
    if (y % x != p[i] % x) Return("0");
    y -= p[i];
    if (y < 0) Return("0");
    y /= x;
  }
  if (y)
    Return("0");
  else
    Return("1");
}
