In the AP class we are transitioning from new content towards test prep. While we do AP style problems all year I have just really started talking about strategy for the AP exam itself. On the Free Response questions our theme is Stealing Points.
Grabbing points on the free response --> Here's what I march my kids through:
- Is it a method? Look for return type - does it return an int?
- while we're looking at the return, does it return a boolean? You should probably have one case that returns a true, and one a false. Just a thought
- Does it tell you to return a -1 under certain situations?
- does the problem use an array? Well, we usually use a for loop with those - write one. Use .length
- ArrayList? for-each loop, unless you are removing things
- does the problem ask a question? We use if's for those. You probably want to access the array/ArrayList there too.
You get the idea - we're just looking through our programming toolkit and looking for patterns in the problem.
Now obviously this is a terrible way to solve a problem. This technique is our worst case scenario. You've read the problem and have. no. clue. of what to write. It happens to the best kids, especially on a timed test under a lot of pressure.
Take a second to look over the grading rubrics and think about this technique. We did part 1a in class the other day. In theory you could get over half the points on this question and not have any idea of how to solve it.
Is this teaching to the test? Sure. But what I find is when you remove a kid's blind panic and just get them putting some code on paper they often have that light-bulb moment that shows how to solve the problem. And really, writing code on paper is a bit silly, so a game plan is bound to help.