// yukicoder: 358 も~っと!門松列 // 2019.5.19 bal4u #include int check(int A, int B, int C) { if (A == C) return 0; if (B == A || B == C) return 0; if (A < C) { if (B < A || B > C) return 1; } else { if (B > A || B < C) return 1; } return 0; } int main() { int A, B, C, p, max, ans; scanf("%d%d%d", &A, &B, &C); if (A == C) { puts("0"); return 0; } if (check(A, B, C)) { puts("INF"); return 0; } max = A; if (B > max) max = B; if (C > max) max = C; ans = 0; for (p = 1; p <= max; p++) { if (check(A % p, B % p, C % p)) ans++; } printf("%d\n", ans); return 0; }