← Home
For problem statement at 1000-1999/1800-1899/1810-1819/1810/problemH.txt this is a correct solution, but verifier at 1000-1999/1800-1899/1810-1819/1810/verifierH.go ends with All tests passed can you fix the verifier? package main

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

func main() {
	reader := bufio.NewReader(os.Stdin)
	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	var t int
	if _, err := fmt.Fscan(reader, &t); err != nil {
		return
	}

	F := make([]int64, 60)
	F[1] = 1
	F[2] = 1
	for i := 3; i < 60; i++ {
		F[i] = F[i-1] + F[i-2]
	}

	for i := 0; i < t; i++ {
		var n int64
		fmt.Fscan(reader, &n)

		k := n / 2
		if n%2 == 0 {
			m := 0
			for {
				if k <= F[m+4]-1 {
					break
				}
				m++
			}
			fmt.Fprintln(writer, k-int64(2*m))
		} else {
			m := 0
			for {
				if k <= F[m+5] {
					break
				}
				m++
			}
			fmt.Fprintln(writer, k-int64(2*m+1))
		}
	}
}