← Home
For problem statement at 1000-1999/1500-1599/1560-1569/1562/problemD1.txt this is a correct solution, but verifier at 1000-1999/1500-1599/1560-1569/1562/verifierD1.go ends with All tests passed can you fix the verifier? ```go
package main

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

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Split(bufio.ScanWords)
	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	var t int
	scanner.Scan()
	fmt.Sscan(scanner.Text(), &t)

	for ; t > 0; t-- {
		var n, q int
		scanner.Scan()
		fmt.Sscan(scanner.Text(), &n)
		scanner.Scan()
		fmt.Sscan(scanner.Text(), &q)

		scanner.Scan()
		s := scanner.Text()

		pref := make([]int, n+1)
		for i := 1; i <= n; i++ {
			val := 1
			if s[i-1] == '-' {
				val = -1
			}
			if i%2 == 0 {
				val = -val
			}
			pref[i] = pref[i-1] + val
		}

		for i := 0; i < q; i++ {
			var l, r int
			scanner.Scan()
			fmt.Sscan(scanner.Text(), &l)
			scanner.Scan()
			fmt.Sscan(scanner.Text(), &r)

			sum := pref[r] - pref[l-1]
			if sum == 0 {
				fmt.Fprintln(writer, 0)
			} else if (r-l+1)%2 == 1 {
				fmt.Fprintln(writer, 1)
			} else {
				fmt.Fprintln(writer, 2)
			}
		}
	}
}
```