← Home
For problem statement at 2000-2999/2100-2199/2130-2139/2138/problemA.txt this is a correct solution, but verifier at 2000-2999/2100-2199/2130-2139/2138/verifierA.go ends with All 44 tests passed. can you fix the verifier? package main

import (
	"bufio"
	"fmt"
	"math/bits"
	"os"
	"strings"
)

func main() {
	in := bufio.NewReaderSize(os.Stdin, 1<<20)
	out := bufio.NewWriterSize(os.Stdout, 1<<20)
	defer out.Flush()

	var t int
	fmt.Fscan(in, &t)

	var sb strings.Builder
	for ; t > 0; t-- {
		var k int
		var x uint64
		fmt.Fscan(in, &k, &x)

		m := bits.TrailingZeros64(x)
		n := k - m

		sb.WriteString(fmt.Sprintf("%d\n", n))
		for i := 1; i <= n; i++ {
			if i > 1 {
				sb.WriteByte(' ')
			}
			if ((x >> uint(m+i)) & 1) == 1 {
				sb.WriteByte('2')
			} else {
				sb.WriteByte('1')
			}
		}
		sb.WriteByte('\n')
	}

	out.WriteString(sb.String())
}