A somewhat confusing way you could do it is to say
Code:
p { text-indent: 0; }
p + p { text-indent: 2em; }
Which says (confusingly) paragraphs by default have no indent, but paragraphs following a paragraph (which are the majority) are indented. So the first one ends up handling paragraphs after h, blockquote, etc. tags.
Clever, but as I said, confusing.