Помогите с задачей! Буду очень благодарна.
Задача F-Игра "Жизнь"
F. Игра "Жизнь" Ограничение времени: 1 с
Ограничение памяти: 256 M
Игра «Жизнь» была придумана английскому математиком Джоном конвейер в 1970 году. Упершись описание этой игры Опубликовано в Октябрьском выпуска (1970) журнала Scientific American, в рубрике «математические игры» Мартина Гарднера. Место действия игры - «вселенная» - ции размечена на клитинки поверхности. Каждая клитинка на Этой поверхности может находиться в двух состояниях: бути живой или бути мертвой. Клитинка имеет восемь соседей. Распределение живых клитинок на початках игре називаеться Первым поколениям. Каждое следующее поколение рассчитывается на основе предыдущих по следующим правилам: - пустая (мертвая) клитинка из Ровно тремя живыми клитинками-сусидами оживае; - ЕСЛИ в живой клитинки есть два или три живых соседа, те эта клитинка Продолжает жить, в противном случае (если соседей меньше двух или больше трех) клетка умирает (от «одиночества» или от «перенаселенности») . В этой задаче рассматривается игра «Жизнь» на тори. Представим себе прямоугольник размером n строк на m столбцов. Для того, чтобы перетворити Его в тор мысленно «склеим» Его верхняя сторона с нижней, а левую С правой. Таким образом, у каждого клитинки, даже ЕСЛИ вон раньше находилась на границе прямоугольник, теперь Ровно восемь соседей. Ваше Задача состоит в том, чтобы знайте конфигурацию клитинок, Что будет через k поколений от заданного.
Входные данные
Первая строка входного потока содержит три целых числа: n, m, k (4 ≤ n, m ≤ 100, 0 ≤ k ≤ 100). Следующие n строк содержат по m Символ Коженна и описують Начальная конфигурацию. j-ый символ i-й строки заключайте ".» (точка) , ЕСЛИ соответствующая клитинка мертва, и «*» - если жива.
Исходные данные
В выходной поток виведить конфигурацию клитинок через k поколений после начального в том же формате, в котором конфигурация задается во входном даних.