← Home
For problem statement at 0-999/400-499/490-499/493/problemE.txt this is a correct solution, but verifier at 0-999/400-499/490-499/493/verifierE.go ends with All tests passed can you fix the verifier? ```go
package main

import (
	"fmt"
)

func main() {
	var t, a, b int64
	if _, err := fmt.Scan(&t, &a, &b); err != nil {
		return
	}

	if t == 1 {
		if a == 1 {
			if b == 1 {
				fmt.Println("inf")
			} else {
				fmt.Println("0")
			}
		} else {
			temp := b
			S := int64(0)
			for temp > 0 {
				S += temp % a
				temp /= a
			}

			if S == 1 && b > 1 {
				fmt.Println("1")
			} else if S == a {
				fmt.Println("1")
			} else {
				fmt.Println("0")
			}
		}
	} else {
		if a == 1 {
			if b == 1 {
				fmt.Println("1")
			} else {
				fmt.Println("0")
			}
		} else {
			if b == a {
				if t == a {
					fmt.Println("2")
				} else {
					fmt.Println("1")
				}
			} else if b < a {
				fmt.Println("0")
			} else {
				tempB := b
				sum := int64(0)
				powerOfT := int64(1)
				isValid := true

				for tempB > 0 {
					d := tempB % a
					tempB /= a

					if d > 0 {
						if powerOfT > a {
							isValid = false
							break
						}
						if d > (a-sum)/powerOfT {
							isValid = false
							break
						}
						sum += d * powerOfT
					}

					if tempB > 0 {
						if powerOfT > a/t {
							powerOfT = a + 1
						} else {
							powerOfT *= t
						}
					}
				}

				if isValid && sum == a {
					fmt.Println("1")
				} else {
					fmt.Println("0")
				}
			}
		}
	}
}
```