Companies don't have 2 hour time limits on solving their hard problems - if you run into hard algorithmic problems in your problem domain, you should just have someone with a graduate degree in CS theory. Let them work out a solution that's actually correct and they can explain why, and then the engineers can implement said algorithm.