package main import . "fmt" import . "math/big" func main() { var n int64 Scan(&n) Println(solve(n)) } func check() { for n := 1; n < 10000; n++ { s:=solve(int64(n)) b:=bruteforce(n) if s!= b { Println(n, s, b) return } } Println("ok") } func solve(nn int64) int64 { n:=NewInt(nn) x:=new(Int).Sqrt(n) if x.Cmp(new(Int).Div(n, x))==0 { return x.Add(x,x).Sub(x,NewInt(1)).Int64() } else { return x.Add(x,x).Int64() } } func bruteforce(n int) int64 { m:=map[int]bool{} for k:=1; k<=n; k++ { m[n/k]=true } return int64(len(m)) }