← Home
For problem statement at 1000-1999/1400-1499/1480-1489/1488/problemD.txt this is a correct solution, but verifier at 1000-1999/1400-1499/1480-1489/1488/verifierD.go ends with All tests passed can you fix the verifier? ```go
package main

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

func min(a, b int64) int64 {
	if a < b {
		return a
	}
	return b
}

func computeMinSum(x, nn int64) int64 {
	if nn == 0 {
		return 0
	}
	m := nn - 1
	var sum int64 = 0
	logg := int64(0)
	tmp := x
	for tmp > 0 {
		tmp >>= 1
		logg++
	}
	logg--
	if logg < 0 {
		logg = 0
	}
	L := logg
	minj := min(m, L)
	for j := int64(0); j <= minj; j++ {
		d := int64(1) << uint(j)
		ceilVal := (x + d - 1) / d
		sum += ceilVal
	}
	if m > L {
		sum += (m - L)
	}
	return sum
}

func main() {
	in := bufio.NewReader(os.Stdin)
	var t int64
	fmt.Fscan(in, &t)
	for i := int64(0); i < t; i++ {
		var n, s int64
		fmt.Fscan(in, &n, &s)
		lo := int64(1)
		hi := s
		for lo <= hi {
			mid := (lo + hi) / 2
			if computeMinSum(mid, n) <= s {
				lo = mid + 1
			} else {
				hi = mid - 1
			}
		}
		fmt.Println(hi)
	}
}
```