[Go] Brute Force Solution
\nfunc closestCost(baseCosts []int, toppingCosts []int, target int) int {\n    closest := math.MinInt32\n    \n    for _, bCost := range baseCosts {\n        fi
```\nfunc closestCost(baseCosts []int, toppingCosts []int, target int) int {\n    closest := math.MinInt32\n    \n    for _, bCost := range baseCosts {\n        findClosest(toppingCosts, &closest, bCost, target, 0)\n    }\n    \n    return closest\n}\n\nfunc findClosest(toppingCosts []int, closest *int, curr, target, i int) {\n    d1, d2 := abs(target - curr), abs(target - *closest)\n    \n    if d1 < d2 || (d1 == d2 && curr < *closest) {\n        *closest = curr\n    }\n    if i >= len(toppingCosts) || curr >= target || *closest == target {\n        return\n    }\n    \n    findClosest(toppingCosts, closest, curr + toppingCosts[i], target, i + 1)\n    findClosest(toppingCosts, closest, curr + 2 * toppingCosts[i], target, i + 1)\n    findClosest(toppingCosts, closest, curr, target, i + 1)\n}\n\nfunc abs(a int) int {\n    if a < 0 {\n        return -a\n    }\n    \n    return a\n}\n```
['Go']