  Direct reciprocity is a wide-spread mechanism for evolution of cooperation.
In repeated interactions, players can condition their behavior on previous
outcomes. A well known approach is given by reactive strategies, which respond
to the co-player's previous move. Here we extend reactive strategies to longer
memories. A reactive-$n$ strategy takes into account the sequence of the last
$n$ moves of the co-player. A reactive-$n$ counting strategy records how often
the co-player has cooperated during the last $n$ rounds. We derive an algorithm
to identify all partner strategies among reactive-$n$ strategies. We give
explicit conditions for all partner strategies among reactive-2, reactive-3
strategies, and reactive-$n$ counting strategies. Partner strategies are those
that ensure mutual cooperation without exploitation. We perform evolutionary
simulations and find that longer memory increases the average cooperation rate
for reactive-$n$ strategies but not for reactive counting strategies. Paying
attention to the sequence of moves is necessary for reaping the advantages of
longer memory.
