Go Min Perimeter Rectangle
func minPerimeterRectangle(n int) int {
minPerimeter := math.MaxInt
for i := 1; i*i < n; i++ {
if n%i == 0 {
if p := 2 * (i + n/i); p < minPerimeter {
minPerimeter = p
}
}
}
return minPerimeter
}
This searches factor pairs up to the square root and picks the pair with the smallest perimeter.