Programming Exercise for Problem Solving with Board-Game Strategy : Analysis of Battle Ranking and Methods of Battle Matching