First of all, you have to ask yourself how important is this. Is it important for you to get a lot of reputation? Or is it just important to help people out? There are a lot of things that you can do that help people out that don't gain you a lot of reputation.

For example, those badly worded and incomplete questions. You will almost never get much rep from answering those; but you can help that person out a lot, by providing an answer that describes how to formulate their question better, asks them for the extra information they need, shows them how to provide a minimal example of the problem at hand. Then as they edit their question to post this extra information, you can try and use that to flesh out your answer, until you have answered their question for them. By the end, you will probably only get one or two upvotes and an accepted answer (at best, sometimes they just give up), but you will have helped explain to them how better to ask questions, and how better to solve the problem on their own.

Beyond that, sometimes you just have to answer questions quickly and get lucky. I spent some time "playing" StackOverflow like an MMO, and learned some tricks for getting rep (while still doing a good job of answering peoples questions). To do well on questions on popular tags, find ones with no answers yet (or only one or two answers) that you can answer. If it can be answered in a sentence, do so. Then edit your answer. Flesh it out. Provide links to the documentation. Write a sample program demonstrating how it works.

That way, you got in quick with the one-sentence answer. If that is what they need, they may accept it and you're done. You may also get early upvotes. The edit, to have a more in-depth answer, will make your answer a lot more useful than all of the other quick and dirty answers. So if they needed something more in-depth, they will appreciate the extra information. People always appreciate links to docs, and short and sweet example code. Some people appreciate an answer that expands a little bit, describes more generally how something works to put the answer in context and allow them to figure that out in general.

Here's an example of that strategy at work: http://stackoverflow.com/posts/793867/revisions . In fact, I believe there was another edit that's not shown (if you do an edit within a certain window, it gets merged into the last edit). I think that I just started out with the first two lines; the most basic answer. I then expanded a little bit, to cover some other possible cases (as I couldn't tell precisely what they needed from the question). Then I Googled for the documentation, and provided links to it, to help them find other information they might want to know.

Another strategy is to find a hard problem, and spend the time and effort running it to ground. These problems don't come up often, but when they do, they can be really good ones to solve. They can substantially help people out. They are usually much more interesting, and you can learn new things while trying to solve them.

For example, here's one where I didn't know the answer when I first saw the question: http://stackoverflow.com/questions/1990464/efficiency-of-pur... . In fact, I saw the question, thought it was interesting, and wanted to find out the answer; several people had "answered" it, but their logic was so bad that I couldn't let those answers stand (there are a number of answers on that question that have since been deleted by their authors, which you can only see if you have a high reputation, but the answer that's at -15 should give you an idea of the quality of many of the earlier answers). Luckily, I had a bood that I knew would probably answer the question, or give me the starting point. I pulled out that book, found the appropriate references, Googled them, found the papers in question, skimmed through those, and summarized it all. It took me a half an hour to an hour to do so, and then I read the papers in more detail and posted a substantial edit that went into a lot more detail a few hours later. That took some serious effort, but it has been one of my highest voted answers.

So, in summary, doing a good job on the writeup can be important. Provide context, links, references, sample code. Quick throwaway answers will sometimes answer the question, but people like a little extra information (as long as it isn't tl;dr like this comment). If you can't solve easy problems quickly enough, either solve more obscure problems, solve harder problems, or just do a better job answering those easy problems. Don't worry too much about your reputation; it can be a serious time sink to get a lot of reputation. I have spent time climbing the reputation ladder as fast as possible, and I spent way too much time doing so.