It fluctuates, but most recently somewhere between 34 - 56 instances for dev, staging and production search, crawler and content build clusters. (we index terabytes of data and hundred of millions of documents)
Most of our instances we keep up for months at a time, although they can turn flaky. We tend to use EBS, so we reprovision instances when needed. The biggest overall issue we have with EC2 is clock skew issues that can fool our fault-tolerance layers into thinking there is a major timeout issue when it's only some clock skew. That and some instances randomly rebooting in the middle of a time critical processing operation. We primarily use m2.xlarge or m2.2xlarge instance types.
The needs of our customer are too transient for reserved yet, so it's primarily been as needed (on demand?) We run into problems during provisioning sometimes and Amazon has to then raise our quota. Some customer architecture and capacity requirements have stabilized, so they are talking about getting reserved instances. We also have been experimenting with provisioning a bunch of servers for short durations for "burst processing" of content, but we're never totally sure if AWS will have the capacity we need. Things like reserved instances might get more use by us soon.