Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Problem 739. Battleship_000 : (TM) Classic Game - Easy computer bot

Created by Richard Zapor

The Classic Battleship™ game implemented between a computer bot and a player's bot.

Battleship

You and your opponent have 9 ships of various sizes.

These Ships/Sizes/Qty are Carrier-5, Battleship-4, Submarine-3(qty 2), Cruiser-3(qty 2), Destroyer-2(qty 3).

The board is 10x10. (index 1-100) Unknown=0, Miss=1, Hit=2

The Play:

Player places his ships on the board. Ships may not overlap but may touch.

Ships array is [9,2] where 1 is the Carrier and 9 is a Destroyer.

[start_idx, orientation; start_idx, orientation...]. An orientation of 0 is Down and a 1 is Right.

Ships[1 1;...] places the Carrier in cells [1 11 22 33 44]

Player takes a shot on the board - idx 1:100.

The computer bot will take a shot if he has any ships remaining.

The player will see an updated board for his next shot if he has any ships remaining.

Pass: Win

Battleship_bot_000 randomly fires.

There is a Bernoulli probability question if this strategy could ever win against anything but another random bot.

Problem Group

Solution Statistics

5 correct solutions 8 incorrect solutions
Last solution submitted on May 22, 2013

Solution Comments