#TCTM8281. 元胞自动机

0

元胞自动机

元胞自动机

题目描述

出题人:于其渲(非教师) 很久以前,一位物理学家提出了一个问题,一些人造元胞通过固定的规律进行变换,后来计算机学家利用计算机解答了这一系列问题,以下就是一道经典题目: 有一个容器,他被分为了144个方格,按照12×12的顺序排列。首先给定一个初始状态(即为元胞在这个容器内的分布情况),然后按照事件A(当以一个方格为中心展开的九宫格内除这个方格外有超过2个元胞则这个方格内不可以存在元胞)和事件B(当以一个方格为中心展开的九宫格内除这个方格外有低于3个元胞则这个方格必须存在元胞)变换,将整个容器内的元胞分布刷新一遍即为一秒钟的元胞变换,然后求出5秒钟后元胞的分布情况。 需要输入的是两个阵列,每个阵列进行五秒的分化后,将两个表格合并(0和1即取1,1和1即取0,0和0即取1),最后输出结果。

输入格式

输入两个12×12的由数字0和1组成的矩阵,由空格分隔。 0代表此方格内不存在元胞,1代表方格内存在元胞。

输出格式

一个由数字0和1组成的矩阵,由空格分隔。 0代表此方格内不存在元胞,1代表方格内存在元胞。
0 0 1 0 0 1 1 0 0 1 1 0
1 0 1 1 0 0 1 0 1 1 1 1
0 0 1 0 1 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 1 1 0 1 1 1 0 0 1
1 1 1 1 1 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0 0 0 1 0
1 1 0 0 1 0 0 1 0 0 0 1
0 0 1 0 0 1 0 0 1 0 1 1
0 0 0 0 0 1 1 1 1 1 1 0
1 0 1 0 0 1 0 1 1 1 0 0
1 1 0 1 0 1 1 0 1 0 1 0
1 0 0 0 1 1 1 0 0 0 0 0
0 0 0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 1 1 1 1 0 0 1
0 0 0 0 0 0 1 1 1 1 1 1
0 0 0 0 0 0 1 1 1 1 1 1
0 0 0 0 0 0 0 1 1 1 1 1
1 0 0 0 0 0 0 0 1 1 0 1
1 1 1 0 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0 0
1 1 1 1 1 0 0 0 0 0 0 0
0 1 1 1 0 1 0 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
0 1 1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 0 1 1 1 1 1 1 1

提示

#### 数据说明 共25个评测数据,每个4分,共100分。 评测数据中不包括样例,请不要直接输出样例,否则将不得分! #### 样例解释 样例1中的第1个数为0,则展开的九宫格中只有0、0、1,所以其为事件B,则其在第一次变换中会变为1。 样例1中的第2行第2列的0展开的九宫格中有4个1,则触发事件A,则其还为0。 剩下的依次计算,便得到样例输出1。

来源

童程童美