So did anyone manage to implement a working solution that pass any tests without a specific mechanism to bypass the last one?
If you still have trouble to find a working algorithm my solution is the following:
Explore every empty and "soon broken" positions to find the place where a bomb will destroy the maximum amount of blocks that are not in the range of another bomb. (What I call a soon broken block is a block in range of a bomb already placed)
Then try to place a bomb at this location (do nothing if you are on a block that is not yet broken).
This solve any freindly test but fail at the last trap test.
To solve the last one, after placing any bomb I count the number of breakable blocks that are "alone" on the map (alone = you can't place a bomb that will destroy this block and another one, so you need a bomb only for this one).
And if I have less bombs left than the number of alone blocks, I backtrack and I run the algorithm to place a bomb again but I ignore the placements that will destroy the maximal number of blocks, so the new maximum is strictly less than the previous one.
Hope that helped ^^
@Tyra_El: J'ai rencontré le même problème sur un autre puzzle Je trouve dommage d'avoir à utiliser un IDE externe parceque celui intégré au site est très efficace, donc j'espère qu'ils arriveront à régler ce problème assez rapidement...