Python生成三色线性训练集(generate函数)

本节仿真实现《深度学习之TensorFlow》(机械工业出版社)第七章 P120

代码7-1 线性逻辑回归

  1 import tensorflow as tf
  2 import numpy as np
  3 import matplotlib.pyplot as plt
  4 
  5 
  6 def generate(sample_size, mean, cov, regression):
  7     # mean=[[x1, y1],
  8     #       [x2, y2],
  9     #       [x3, y3]]
 10     # mean=[[2, 2],
 11     #       [5, 5],
 12     #       [5, 2]]
 13 
 14     # cov=[ [x1, y1],
 15     #       [x2, y2],
 16     #       [x3, y3]]
 17     # cov=[ [1.5, 1],
 18     #       [1.5, 2.3],
 19     #       [1.2, 1.6]]
 20 
 21     # regression=Ture: 转化为one-hot label
 22 
 23     import numpy as np
 24     import tensorflow as tf
 25     import matplotlib.pyplot as plt
 26 
 27     # 总训练数量
 28     batchSize = np.array(sample_size, dtype=np.int16)
 29     # 单个训练集数量
 30     eachBatchSize = 10
 31 
 32     # mean:位置均值
 33     meaLoc = np.array(mean, dtype=np.float16)
 34 
 35     # cov:位置标准差
 36     covLoc = np.array(cov, np.float16)
 37 
 38     # Red points
 39     redPointsX = np.random.normal(loc=meaLoc[0, 0], scale=covLoc[0, 0], size=batchSize[0])
 40     print("redX=", redPointsX)
 41     redPointsY = np.random.normal(loc=meaLoc[0, 1], scale=covLoc[0, 1], size=batchSize[0])
 42     print("redY=", redPointsY)
 43 
 44     '''
 45     numpy中reshape函数的三种常见相关用法
 46     reshape(1,-1)转化成1行:
 47     reshape(2,-1)转换成两行:
 48     reshape(-1,1)转换成1列: 
 49     reshape(-1,2)转化成两列
 50     '''
 51     redP = np.concatenate(([redPointsX], [redPointsY]), 0)
 52     print("red=", redP)
 53     print("redPxEachBatch=", redP[0, 1:eachBatchSize],
 54           "redPyEachBatch=", redP[1, 1:eachBatchSize])
 55 
 56     # Blue Points
 57     bluePointsX = np.random.normal(loc=meaLoc[1, 0], scale=covLoc[1, 0], size=batchSize[1])
 58     print("blueX=", bluePointsX)
 59     bluePointsY = np.random.normal(loc=meaLoc[1, 1], scale=covLoc[1, 1], size=batchSize[1])
 60     print("blueY=", bluePointsY)
 61 
 62     blueP = np.concatenate(([bluePointsX], [bluePointsY]), 0)
 63     print("blue=", blueP)
 64     print("bluePxEachBatch=", blueP[0, 1:eachBatchSize],
 65           "bluePyEachBatch=", blueP[1, 1:eachBatchSize])
 66 
 67     # Yellow points
 68     yellowPointsX = np.random.normal(loc=meaLoc[2, 0], scale=covLoc[2, 0], size=batchSize[2])
 69     print("yellowX=", yellowPointsX)
 70     yellowPointsY = np.random.normal(loc=meaLoc[2, 1], scale=covLoc[2, 1], size=batchSize[2])
 71     print("yellowY=", yellowPointsY)
 72 
 73     yellowP = np.concatenate(([yellowPointsX], [yellowPointsY]), 0)
 74     print("yellow=", yellowP)
 75     print("yellowPxEachBatch=", yellowP[0, 1:eachBatchSize],
 76           "yellowPyEachBatch=", yellowP[1, 1:eachBatchSize])
 77 
 78     # one-hot编码
 79     XLabel = np.concatenate((redPointsX, bluePointsX, yellowPointsX), 0)
 80     YLabel = np.concatenate((redPointsX, bluePointsY, yellowPointsY), 0)
 81     X0 = np.concatenate(([XLabel], [YLabel]), 0)
 82     X0 = X0.T
 83 
 84     print("X0=", X0)
 85     LabelIndex = np.concatenate((np.zeros((len(redPointsX))), np.ones((len(bluePointsX))),
 86                                  2 * np.ones((len(yellowPointsX)))), 0)
 87     Y0 = LabelIndex.copy()
 88     print("LabelIndex=", LabelIndex)
 89     print("Y0=", Y0)
 90 
 91     plt.figure(1)
 92     plt.scatter(redP[0, :], redP[1, :], c='red')
 93     plt.scatter(blueP[0, :], blueP[1, :], c='blue')
 94     plt.scatter(yellowP[0, :], yellowP[1, :], c='yellow')
 95     plt.title('Exercise Set')
 96     plt.show()
 97 
 98     print("LabelIndex.shape=", LabelIndex.shape)
 99     b = LabelIndex.shape[0]
100     print("b=", b)
101 
102 
103     if regression == True:
104         oneHotLabel = np.zeros((b, 3))
105         print("oneHotLabel=", oneHotLabel)
106         for i, ele in enumerate(LabelIndex):
107             print("i=", i, "ele=", ele)
108             if ele == 0:
109                 oneHotLabel[i, 2] = 1
110             elif ele == 1:
111                 oneHotLabel[i, 1] = 1
112             else:
113                 oneHotLabel[i, 0] = 1
114         print("oneHotLabel=", oneHotLabel)
115         return X0, Y0, oneHotLabel
116     else:
117         return X0, Y0, LabelIndex
118 
119 
120 mean = [[2, 2], [5, 5], [5, 2]]
121 cov = [[1.5, 1.0],
122        [1.5, 2.3],
123        [1.2, 1.6]]
124 regression = True
125 
126 X0, Y0, OneHotLabel = generate([100, 100, 100], mean, cov, regression)
127 print("X0=", X0, "
", "Y0=", Y0, "
", "OneHotLabel=", OneHotLabel)

X0= [[  1.29076547e+00   1.29076547e+00]
 [  2.54851831e+00   2.54851831e+00]
 [  1.74291254e+00   1.74291254e+00]
 [  5.29646562e-01   5.29646562e-01]
 [  2.88065974e+00   2.88065974e+00]
 [  2.60421278e+00   2.60421278e+00]
 [  2.30844318e+00   2.30844318e+00]
 [  3.51963078e+00   3.51963078e+00]
 [ -3.24017993e-01  -3.24017993e-01]
 [  1.08355284e+00   1.08355284e+00]
 [  2.73900852e+00   2.73900852e+00]
 [  4.47037447e+00   4.47037447e+00]
 [  3.31775615e+00   3.31775615e+00]
 [  2.28840679e+00   2.28840679e+00]
 [  2.99576047e+00   2.99576047e+00]
 [ -4.90235098e-01  -4.90235098e-01]
 [  3.41406014e-01   3.41406014e-01]
 [  1.81782017e+00   1.81782017e+00]
 [  4.98798045e-01   4.98798045e-01]
 [  1.92536423e+00   1.92536423e+00]
 [  2.27335473e+00   2.27335473e+00]
 [  2.95426513e+00   2.95426513e+00]
 [  1.28975792e+00   1.28975792e+00]
 [  4.44187724e+00   4.44187724e+00]
 [  7.88474884e-02   7.88474884e-02]
 [  3.02857003e+00   3.02857003e+00]
 [  9.08319956e-01   9.08319956e-01]
 [  4.04888265e+00   4.04888265e+00]
 [  3.14416173e+00   3.14416173e+00]
 [  5.88474500e-01   5.88474500e-01]
 [  3.83000196e+00   3.83000196e+00]
 [ -5.65633480e-01  -5.65633480e-01]
 [ -8.60629478e-01  -8.60629478e-01]
 [  7.14321575e-01   7.14321575e-01]
 [  3.65021976e-01   3.65021976e-01]
 [  1.57987343e+00   1.57987343e+00]
 [  5.19906629e-01   5.19906629e-01]
 [  2.55787372e+00   2.55787372e+00]
 [  1.55685212e+00   1.55685212e+00]
 [  2.05276439e+00   2.05276439e+00]
 [  3.20471039e-01   3.20471039e-01]
 [ -7.52957963e-03  -7.52957963e-03]
 [  1.15617381e+00   1.15617381e+00]
 [  2.17552917e+00   2.17552917e+00]
 [  2.17140368e+00   2.17140368e+00]
 [  7.15749052e-01   7.15749052e-01]
 [  1.69920151e+00   1.69920151e+00]
 [  1.24721025e+00   1.24721025e+00]
 [  1.57737946e+00   1.57737946e+00]
 [  4.95696212e-01   4.95696212e-01]
 [  3.63449642e+00   3.63449642e+00]
 [  1.23688941e+00   1.23688941e+00]
 [  4.74146141e-01   4.74146141e-01]
 [  4.21645225e-01   4.21645225e-01]
 [  1.72064770e+00   1.72064770e+00]
 [  2.05759547e+00   2.05759547e+00]
 [  2.05697512e+00   2.05697512e+00]
 [  1.30873311e+00   1.30873311e+00]
 [  1.52518459e+00   1.52518459e+00]
 [  1.93059044e+00   1.93059044e+00]
 [  1.84468414e+00   1.84468414e+00]
 [  4.30497384e+00   4.30497384e+00]
 [  1.37526168e+00   1.37526168e+00]
 [  4.02961747e+00   4.02961747e+00]
 [  1.98000138e-01   1.98000138e-01]
 [  2.64359245e+00   2.64359245e+00]
 [ -4.14280133e-01  -4.14280133e-01]
 [  6.76870096e-01   6.76870096e-01]
 [  2.59816164e+00   2.59816164e+00]
 [  3.24663037e+00   3.24663037e+00]
 [  1.30200617e+00   1.30200617e+00]
 [  3.56004577e+00   3.56004577e+00]
 [  4.76415848e-01   4.76415848e-01]
 [  4.70651148e+00   4.70651148e+00]
 [  1.81170417e+00   1.81170417e+00]
 [  1.45078253e+00   1.45078253e+00]
 [  1.30607357e+00   1.30607357e+00]
 [  3.50190561e+00   3.50190561e+00]
 [  7.11759256e-01   7.11759256e-01]
 [  2.43706823e+00   2.43706823e+00]
 [  3.12792500e+00   3.12792500e+00]
 [  1.46862266e+00   1.46862266e+00]
 [  2.30718376e+00   2.30718376e+00]
 [  3.41601656e+00   3.41601656e+00]
 [ -9.22891878e-01  -9.22891878e-01]
 [  1.33069830e-02   1.33069830e-02]
 [  1.03524602e+00   1.03524602e+00]
 [ -1.59941249e+00  -1.59941249e+00]
 [  1.90648078e+00   1.90648078e+00]
 [  2.74478203e+00   2.74478203e+00]
 [  1.13376549e+00   1.13376549e+00]
 [  4.14608341e-03   4.14608341e-03]
 [  1.26943541e+00   1.26943541e+00]
 [  2.92539530e+00   2.92539530e+00]
 [  6.27725946e-01   6.27725946e-01]
 [ -2.66369953e-01  -2.66369953e-01]
 [  1.46060918e+00   1.46060918e+00]
 [  3.64735160e+00   3.64735160e+00]
 [  2.54276675e+00   2.54276675e+00]
 [  6.77082350e-02   6.77082350e-02]
 [  2.94414913e+00   6.20175890e+00]
 [  3.99321644e+00   6.71789559e+00]
 [  6.00424087e+00   3.29604029e+00]
 [  5.71946014e+00  -3.08500269e-01]
 [  4.58121976e+00  -3.24013876e-01]
 [  4.65189543e+00   3.24326524e+00]
 [  2.58938182e+00   7.35202730e+00]
 [  4.90589757e+00   3.63598706e+00]
 [  4.87251434e+00   7.34051103e+00]
 [  4.80895543e+00   4.24207547e+00]
 [  6.26552396e+00   2.58032111e+00]
 [  2.23707067e+00   6.58839943e+00]
 [  4.53441398e+00   5.81389578e+00]
 [  6.40000340e+00   4.69612378e+00]
 [  5.90637343e+00   6.05464948e+00]
 [  5.54101076e+00   2.87967500e+00]
 [  5.80300994e+00   6.72813841e+00]
 [  3.40929647e+00   4.99377318e+00]
 [  3.49886677e+00   2.81084325e+00]
 [  4.75999650e+00   5.62626077e+00]
 [  2.56689263e+00   1.59157463e-01]
 [  4.27751666e+00   7.45282858e+00]
 [  2.83089397e+00   8.22895986e+00]
 [  4.99739675e+00   8.30407604e-01]
 [  7.22261566e+00   5.49545722e+00]
 [  3.60969870e+00   9.31073825e+00]
 [  5.65658402e+00   2.26859403e+00]
 [  1.89503435e+00   8.29204000e+00]
 [  5.00532744e+00  -5.82802637e-01]
 [  4.60301350e+00   8.69766749e+00]
 [  5.52900088e+00   4.95127709e+00]
 [  6.20472535e+00   4.35795878e+00]
 [  4.68858491e+00   7.14741365e+00]
 [  4.79545561e+00   3.54278365e+00]
 [  5.31848288e+00   6.95726828e-01]
 [  6.96529501e+00   5.35816685e+00]
 [  5.86086381e+00   5.97469421e+00]
 [  8.78968675e+00   8.90663691e+00]
 [  6.94320762e+00   6.36811991e+00]
 [  6.10268308e+00   6.42324848e+00]
 [  4.34387736e+00   7.83076570e+00]
 [  4.74706675e+00   3.45843576e+00]
 [  2.54417825e+00   3.15600198e+00]
 [  3.13507157e+00   3.67472994e+00]
 [  7.62652664e+00   2.21122338e+00]
 [  3.18281292e+00   5.21185780e+00]
 [  4.67848112e+00   3.06854272e+00]
 [  3.13284936e+00   6.31481039e+00]
 [  6.77913466e+00   5.65283685e+00]
 [  6.45817705e+00   2.71668807e+00]
 [  8.67996763e+00   6.26043571e+00]
 [  3.86698467e+00   5.98262129e+00]
 [  4.91409761e+00   4.25099702e+00]
 [  5.49985909e+00   1.61981511e+00]
 [  7.37164557e+00   8.72201804e+00]
 [  3.59804373e+00   7.64847478e+00]
 [  6.32290967e+00   3.15598173e+00]
 [  4.54488816e+00   3.60181176e+00]
 [  4.87471015e+00   5.12370182e+00]
 [  2.66255506e+00   4.85719102e+00]
 [  3.46298665e+00   6.02462059e+00]
 [  5.39750511e+00   2.51352488e+00]
 [  6.73011886e+00   4.59106293e+00]
 [  8.29800376e+00   1.11366460e+01]
 [  4.46182961e+00   5.52692637e+00]
 [  1.16251428e+00   7.08217173e+00]
 [  2.76940432e+00   5.81681736e+00]
 [  2.55524223e+00   3.00331600e+00]
 [  3.77124714e+00   1.50325901e+00]
 [  4.64295497e+00   5.95584366e+00]
 [  6.23320212e+00   1.81797714e+00]
 [  7.23288685e+00   7.16411367e+00]
 [  5.88259074e+00   9.62674526e+00]
 [  5.27282038e+00   4.21553300e+00]
 [  4.78960605e+00   5.11707709e+00]
 [  6.81095126e+00   6.57568970e+00]
 [  5.55882008e+00   5.39221563e+00]
 [  5.54642748e+00   4.59790173e+00]
 [  5.32428345e+00   5.54821309e+00]
 [  5.65114595e+00   2.68389841e+00]
 [  5.90191128e+00   5.57571336e+00]
 [  6.54886911e+00   7.41356113e+00]
 [  6.09602786e+00   7.37529521e+00]
 [  4.00926987e+00   7.16707051e+00]
 [  7.38234261e+00   3.58562034e+00]
 [  7.20788751e+00   2.17266236e+00]
 [  6.52848033e+00   4.29439730e+00]
 [  5.34808008e+00   2.09178957e+00]
 [  6.23425159e+00   3.46112596e+00]
 [  4.99035389e+00   6.29393807e+00]
 [  7.36737431e+00   2.54202502e+00]
 [  5.39271755e+00   6.29159980e+00]
 [  3.29249630e+00   4.61292438e+00]
 [  7.32631075e+00   4.58955708e+00]
 [  4.34022738e+00   7.67202363e+00]
 [  6.22757782e+00   1.38739934e+00]
 [  5.83554916e+00   4.83547239e+00]
 [  4.08701171e+00   5.60826141e+00]
 [  5.02936613e+00   3.08369962e+00]
 [  7.09597369e+00   4.88711432e+00]
 [  9.31790173e+00   1.82691591e+00]
 [  5.98734663e+00   3.85392411e+00]
 [  5.06390556e+00   1.73243235e+00]
 [  5.12565758e+00   2.27244789e+00]
 [  3.41185976e+00  -8.54617804e-01]
 [  4.34725099e+00   4.52788596e+00]
 [  4.51207350e+00   1.83689776e+00]
 [  4.61823770e+00   1.29699054e+00]
 [  4.29299191e+00   4.10023650e-01]
 [  4.37114831e+00   2.05255823e+00]
 [  6.03257346e+00   2.30375332e+00]
 [  6.20683881e+00   3.39097330e-01]
 [  5.63364397e+00   6.44817380e-01]
 [  4.79495713e+00   2.84898747e+00]
 [  4.89285469e+00   6.77968965e-01]
 [  5.27460412e+00  -9.30886222e-02]
 [  5.93177231e+00  -1.55229360e+00]
 [  5.90194952e+00   1.86055703e+00]
 [  6.01426364e+00   1.66753331e+00]
 [  5.50514462e+00   1.91762736e+00]
 [  6.51817766e+00   1.12964577e-01]
 [  5.61626623e+00  -1.67850222e+00]
 [  6.72810355e+00   2.64675486e+00]
 [  5.62822716e+00   1.93331897e+00]
 [  5.33120237e+00   4.83451235e-01]
 [  3.27816276e+00   1.56765728e+00]
 [  4.55576849e+00   2.58858454e+00]
 [  4.88700799e+00   1.44908741e+00]
 [  5.14126174e+00  -3.61134467e-01]
 [  4.56701165e+00   2.43883003e+00]
 [  4.50130867e+00   9.71992704e-01]
 [  7.24299889e+00  -4.64902851e-01]
 [  3.69499733e+00   3.91542149e+00]
 [  3.83141395e+00   1.26820721e+00]
 [  5.68799842e+00   1.31126077e+00]
 [  5.21616080e+00   3.67638384e+00]
 [  3.98714924e+00   1.83536030e+00]
 [  5.93153517e+00   1.44332667e+00]
 [  5.45201009e+00   3.24812630e+00]
 [  5.04978180e+00   1.07664168e+00]
 [  4.75604453e+00   1.88210378e+00]
 [  6.52839551e+00   3.83492249e+00]
 [  4.88328368e+00   4.14903705e+00]
 [  6.05413343e+00   3.04169438e+00]
 [  3.14466677e+00   1.63021491e+00]
 [  5.25056521e+00   1.67826462e+00]
 [  5.16677247e+00   2.17417943e+00]
 [  4.12261097e+00   3.82667471e+00]
 [  3.52219974e+00   5.65897978e-01]
 [  5.12794748e+00   2.97331418e+00]
 [  6.66491803e+00   3.23684417e+00]
 [  4.28488745e+00   2.28723181e+00]
 [  4.91893063e+00   5.70970302e+00]
 [  5.16327388e+00   3.69974261e+00]
 [  6.33696005e+00   1.94447483e+00]
 [  2.84295503e+00   1.75263172e+00]
 [  6.09624047e+00   2.80767729e+00]
 [  5.24770964e+00   1.74324836e+00]
 [  4.68531183e+00   1.89037649e+00]
 [  6.04485571e+00   1.30268727e+00]
 [  3.78620262e+00   2.63862686e+00]
 [  5.61448871e+00   3.49479210e+00]
 [  6.46937141e+00   1.27241765e+00]
 [  2.35762118e+00   2.68930991e+00]
 [  5.04836986e+00   3.63653201e+00]
 [  4.31478879e+00   4.68609039e-01]
 [  3.68262500e+00   1.93185997e+00]
 [  4.86101331e+00   2.28554886e+00]
 [  6.68012871e+00   1.53197225e+00]
 [  2.63743851e+00   1.20868390e+00]
 [  4.04092216e+00   1.73058200e+00]
 [  2.04076115e+00   2.40432130e+00]
 [  5.74745311e+00   1.96416494e+00]
 [  3.58783013e+00   5.57580984e+00]
 [  5.00763375e+00   9.29724171e-02]
 [  6.56063357e+00   1.05917926e+00]
 [  4.01425518e+00   2.50631782e+00]
 [  5.27628370e+00   2.88521247e+00]
 [  5.30729888e+00   5.75453275e+00]
 [  6.29817988e+00   2.76204215e+00]
 [  2.92340500e+00   2.28167081e+00]
 [  3.64360221e+00   2.77760880e+00]
 [  4.87722097e+00   1.16698930e+00]
 [  3.82580688e+00  -2.97105981e-01]
 [  7.60747601e+00   1.92153986e-01]
 [  3.95614384e+00   3.16009718e+00]
 [  5.72570233e+00  -9.11561208e-01]
 [  4.87600240e+00   1.70723770e+00]
 [  6.10810534e+00   2.77347894e+00]
 [  5.03839430e+00   2.22796297e+00]
 [  5.35584888e+00   3.62306710e-01]
 [  5.08298641e+00   5.02366515e+00]
 [  4.60820002e+00   1.25413571e+00]
 [  4.76998986e+00   1.41829369e+00]
 [  4.94995956e+00   4.51339899e+00]
 [  6.83421072e+00   1.56866885e+00]
 [  4.60352739e+00   2.67854338e-01]
 [  3.82228605e+00   2.03396018e+00]
 [  5.35000179e+00   3.41994257e-02]
 [  5.24619427e+00   1.46969311e+00]]
LabelIndex= [ 0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  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.  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.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.]
Y0= [ 0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.  0.
  0.  0.  0.  0.  0.  0.  0.  0.  0.  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.  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.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.
  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.  2.]

原文地址:https://www.cnblogs.com/Yi-920259020/p/12673085.html