← Home
For problem statement at 2000-2999/2000-2099/2020-2029/2020/problemB.txt this is a correct solution, but verifier at 2000-2999/2000-2099/2020-2029/2020/verifierB.go ends with All 200 tests passed. can you fix the verifier? package main

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

func minS(k uint64) uint64 {
	var lo uint64 = 0
	var hi uint64 = 2000000000
	for lo < hi {
		mid := (lo + hi) / 2
		if mid*(mid+1) >= k {
			hi = mid
		} else {
			lo = mid + 1
		}
	}
	return lo
}

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

	var t int
	if _, err := fmt.Fscan(in, &t); err != nil {
		return
	}
	for ; t > 0; t-- {
		var k uint64
		fmt.Fscan(in, &k)
		s := minS(k)
		n := k + s
		fmt.Fprintln(out, n)
	}
}