362*362*2байта=256кб. Ну, учитывая несовершенство современных языков программирования высокого уровня (и самих программеров), может быть 512кб. Это для карты 362х362, полностью покрытой лесом.
А для карты 100х100, с покрытием лесом процентов 20, это не так уж много, всего несколько килобайт.

У каждой клетки с лесом просто есть параметр - ход, на котором его посадили. А рассчет по формуле происходит во время рубки леса. Системные требования для обсчета и хранения этой информации - даже не 8086, а на уровне спектрума.