← Home
For problem statement at 0-999/100-199/190-199/197/problemB.txt this is a correct solution, but verifier at 0-999/100-199/190-199/197/verifierB.go ends with All 110 tests passed can you fix the verifier? package main

import (
	"bufio"
	"fmt"
	"os"
)

func abs(x int64) int64 {
	if x < 0 {
		return -x
	}
	return x
}

func gcd(a, b int64) int64 {
	a = abs(a)
	b = abs(b)
	for b != 0 {
		a, b = b, a%b
	}
	return a
}

func main() {
	in := bufio.NewReader(os.Stdin)

	var n, m int
	fmt.Fscan(in, &n, &m)

	var a0, b0 int64
	for i := 0; i <= n; i++ {
		var x int64
		fmt.Fscan(in, &x)
		if i == 0 {
			a0 = x
		}
	}

	for i := 0; i <= m; i++ {
		var x int64
		fmt.Fscan(in, &x)
		if i == 0 {
			b0 = x
		}
	}

	if n > m {
		if a0*b0 > 0 {
			fmt.Print("Infinity")
		} else {
			fmt.Print("-Infinity")
		}
		return
	}

	if n < m {
		fmt.Print("0/1")
		return
	}

	g := gcd(a0, b0)
	p := a0 / g
	q := b0 / g
	if q < 0 {
		p = -p
		q = -q
	}
	fmt.Printf("%d/%d", p, q)
}