Greedy by fewest conflicts: always pick the activity that conflicts with the fewest others. This sounds clever but is hard to implement efficiently and can still fail.
Example: construct activities where the low-conflict activity sits in the middle and blocks the actual optimal selection. The core idea: conflict count does not capture what matters. What matters is leaving room for future activities. Counting conflicts requires checking all pairs, which is expensive.