You could add a stop workflow at the end of each set of actions so it won't further evaluate.
For example:
If A and B then Action 1 then Stop workflow
If B or C then Action 1 then Stop workflow
If A and C then Action 1 then Stop workflow
If it successfully enters any of the condition blocks, it executes Action 1 then stops further evaluating.
Alternate solution:
Have a hidden field in your list that is a checkbox. Then, instead of executing whatever your action is, set your checkbox to true. Then it doesn't matter if you enter multiple cases, the only action taken at that level is to set your checkbox. Then, after you evaluate all your conditions, add a step where you take action 1 if your checkbox is true.
For example:
Step 1
-If A and B then set TakeAction to true
-If B or C then set TakeAction to true
-If A and C then set TakeAction to true
Step 2
-If TakeAction=true then Action 1
Step 3 ... (continue with the rest of your workflow)