Add 12 Part 1
This commit is contained in:
922
12/12.ipynb
Normal file
922
12/12.ipynb
Normal file
@@ -0,0 +1,922 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 126,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"with open('testinput','r') as infile:\n",
|
||||
" data=[list(line.strip()) for line in infile.readlines()]"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 127,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import numpy as np\n",
|
||||
"from scipy.ndimage import label\n",
|
||||
"\n",
|
||||
"def find_clusters_matrix(grid):\n",
|
||||
" grid = np.array(grid)\n",
|
||||
" unique_types = np.unique(grid)\n",
|
||||
" clusters = []\n",
|
||||
" \n",
|
||||
" for char in unique_types:\n",
|
||||
" # Binary mask for current character\n",
|
||||
" binary_map = (grid == char)\n",
|
||||
" \n",
|
||||
" # Label connected components\n",
|
||||
" labeled_map, num_features = label(binary_map)\n",
|
||||
" \n",
|
||||
" for cluster_id in range(1, num_features + 1):\n",
|
||||
" # Cluster size\n",
|
||||
" cluster_mask = (labeled_map == cluster_id)\n",
|
||||
" size = cluster_mask.sum()\n",
|
||||
" \n",
|
||||
" # Border length\n",
|
||||
" border_length = 0\n",
|
||||
" for x, y in zip(*np.where(cluster_mask)):\n",
|
||||
" for dx, dy in [(-1, 0), (1, 0), (0, -1), (0, 1)]:\n",
|
||||
" nx, ny = x + dx, y + dy\n",
|
||||
" if nx < 0 or nx >= grid.shape[0] or ny < 0 or ny >= grid.shape[1] or grid[nx, ny] != char:\n",
|
||||
" border_length += 1\n",
|
||||
" \n",
|
||||
" clusters.append({\"type\": char, \"size\": size, \"border_length\": border_length})\n",
|
||||
" \n",
|
||||
" return clusters\n",
|
||||
"\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 128,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[{'type': 'C', 'size': 14, 'border_length': 28}, {'type': 'C', 'size': 1, 'border_length': 4}, {'type': 'E', 'size': 13, 'border_length': 18}, {'type': 'F', 'size': 10, 'border_length': 18}, {'type': 'I', 'size': 4, 'border_length': 8}, {'type': 'I', 'size': 14, 'border_length': 22}, {'type': 'J', 'size': 11, 'border_length': 20}, {'type': 'M', 'size': 5, 'border_length': 12}, {'type': 'R', 'size': 12, 'border_length': 18}, {'type': 'S', 'size': 3, 'border_length': 8}, {'type': 'V', 'size': 13, 'border_length': 20}]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"clusters = find_clusters_matrix(data)\n",
|
||||
"print(clusters)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 129,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"1930"
|
||||
]
|
||||
},
|
||||
"execution_count": 129,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"sum(cluster['size']*cluster['border_length'] for cluster in clusters)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Part 2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 130,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"directions = [\n",
|
||||
" (1, -1, 0),\n",
|
||||
" (2, 1, 0),\n",
|
||||
" (4, 0, -1),\n",
|
||||
" (8, 0, 1),\n",
|
||||
"]\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 134,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import numpy as np\n",
|
||||
"from scipy.ndimage import label\n",
|
||||
"\n",
|
||||
"def find_clusters_matrix(grid):\n",
|
||||
" grid = np.array(grid)\n",
|
||||
" unique_types = np.unique(grid)\n",
|
||||
" clusters = []\n",
|
||||
" \n",
|
||||
" for char in unique_types:\n",
|
||||
" # Binary mask for current character\n",
|
||||
" binary_map = (grid == char)\n",
|
||||
" \n",
|
||||
" # Label connected components\n",
|
||||
" labeled_map, num_features = label(binary_map)\n",
|
||||
" \n",
|
||||
" for cluster_id in range(1, num_features + 1):\n",
|
||||
" # Cluster size\n",
|
||||
" cluster_mask = (labeled_map == cluster_id)\n",
|
||||
" size = cluster_mask.sum()\n",
|
||||
" bordermaps = np.zeros(grid.shape,dtype=int)\n",
|
||||
"\n",
|
||||
" # Border length\n",
|
||||
" for x, y in zip(*np.where(cluster_mask)):\n",
|
||||
" for direction, dx, dy in directions:\n",
|
||||
" nx, ny = x + dx, y + dy\n",
|
||||
" if nx < 0 or nx >= grid.shape[0] or ny < 0 or ny >= grid.shape[1] or grid[nx, ny] != char:\n",
|
||||
" bordermaps[x][y] |= direction\n",
|
||||
" print(bordermaps)\n",
|
||||
" border_length = 0\n",
|
||||
" border_sides = 0\n",
|
||||
" for direction,dx,dy in directions:\n",
|
||||
" map = (bordermaps & direction) != 0\n",
|
||||
" border_length += np.sum(map)\n",
|
||||
" map2, sides = label(binary_map)\n",
|
||||
" print(map2)\n",
|
||||
" border_sides += sides\n",
|
||||
"\n",
|
||||
" clusters.append({\"type\": char, \"size\": size, \"border_length\": border_length, \"border_sides\":border_sides})\n",
|
||||
" \n",
|
||||
" return clusters\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 135,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[[ 0 0 0 0 0 0 5 9 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 4 2 11 0]\n",
|
||||
" [ 0 0 0 0 0 5 10 0 0 0]\n",
|
||||
" [ 0 0 0 7 1 10 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 12 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 6 9 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 14 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 15 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 1 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 1 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 2 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 13]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 5 8]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 4 8]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 4 8]\n",
|
||||
" [ 0 0 0 0 0 0 0 5 0 8]\n",
|
||||
" [ 0 0 0 0 0 0 0 6 2 10]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 7 9]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 12]\n",
|
||||
" [ 0 0 0 0 0 0 0 5 1 8]\n",
|
||||
" [ 0 0 0 0 0 0 0 6 0 10]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 14 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 1 1 1]\n",
|
||||
" [0 0 0 0 0 0 0 0 1 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 5 9 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 6 10 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 13 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 4 1 9 0 0 0 0 0]\n",
|
||||
" [ 0 5 0 0 2 9 0 0 0 0]\n",
|
||||
" [ 0 6 2 8 0 14 0 0 0 0]\n",
|
||||
" [ 0 0 0 14 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 2 2 2 0 0 0 0 0]\n",
|
||||
" [0 2 2 2 2 2 0 0 0 0]\n",
|
||||
" [0 2 2 2 0 2 0 0 0 0]\n",
|
||||
" [0 0 0 2 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 13 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 7 8 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 4 9 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 4 8 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 4 10 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 12 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 14 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 1 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 1 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 1 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [13 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [12 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 6 3 11 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 0 0 0 0 0 0 0]]\n",
|
||||
"[[ 5 1 1 9 0 0 0 0 0 0]\n",
|
||||
" [ 6 2 0 8 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 4 2 11 0 0 0 0 0]\n",
|
||||
" [ 0 0 14 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [0 0 1 1 1 0 0 0 0 0]\n",
|
||||
" [0 0 1 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [0 0 1 1 1 0 0 0 0 0]\n",
|
||||
" [0 0 1 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [0 0 1 1 1 0 0 0 0 0]\n",
|
||||
" [0 0 1 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [0 0 1 1 1 0 0 0 0 0]\n",
|
||||
" [0 0 1 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 13 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 6 11 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 1 1 0 0 0 0]]\n",
|
||||
"[[ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 5 9 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 4 8 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 4 0 3 9 0 0 0 0 0 0]\n",
|
||||
" [ 4 8 0 14 0 0 0 0 0 0]\n",
|
||||
" [ 6 10 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [ 0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[[0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [1 1 1 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 1 0 0 0 0 0 0]\n",
|
||||
" [1 1 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]\n",
|
||||
" [0 0 0 0 0 0 0 0 0 0]]\n",
|
||||
"[{'type': 'C', 'size': 14, 'border_length': 28, 'border_sides': 8}, {'type': 'C', 'size': 1, 'border_length': 4, 'border_sides': 8}, {'type': 'E', 'size': 13, 'border_length': 18, 'border_sides': 4}, {'type': 'F', 'size': 10, 'border_length': 18, 'border_sides': 4}, {'type': 'I', 'size': 4, 'border_length': 8, 'border_sides': 8}, {'type': 'I', 'size': 14, 'border_length': 22, 'border_sides': 8}, {'type': 'J', 'size': 11, 'border_length': 20, 'border_sides': 4}, {'type': 'M', 'size': 5, 'border_length': 12, 'border_sides': 4}, {'type': 'R', 'size': 12, 'border_length': 18, 'border_sides': 4}, {'type': 'S', 'size': 3, 'border_length': 8, 'border_sides': 4}, {'type': 'V', 'size': 13, 'border_length': 20, 'border_sides': 4}]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"clusters = find_clusters_matrix(data)\n",
|
||||
"print(clusters)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"532"
|
||||
]
|
||||
},
|
||||
"execution_count": 120,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"sum(cluster['size']*cluster['border_sides'] for cluster in clusters)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"[{'type': 'C', 'size': 14, 'border_length': 28, 'border_sides': 8},\n",
|
||||
" {'type': 'C', 'size': 1, 'border_length': 4, 'border_sides': 8},\n",
|
||||
" {'type': 'E', 'size': 13, 'border_length': 18, 'border_sides': 4},\n",
|
||||
" {'type': 'F', 'size': 10, 'border_length': 18, 'border_sides': 4},\n",
|
||||
" {'type': 'I', 'size': 4, 'border_length': 8, 'border_sides': 8},\n",
|
||||
" {'type': 'I', 'size': 14, 'border_length': 22, 'border_sides': 8},\n",
|
||||
" {'type': 'J', 'size': 11, 'border_length': 20, 'border_sides': 4},\n",
|
||||
" {'type': 'M', 'size': 5, 'border_length': 12, 'border_sides': 4},\n",
|
||||
" {'type': 'R', 'size': 12, 'border_length': 18, 'border_sides': 4},\n",
|
||||
" {'type': 'S', 'size': 3, 'border_length': 8, 'border_sides': 4},\n",
|
||||
" {'type': 'V', 'size': 13, 'border_length': 20, 'border_sides': 4}]"
|
||||
]
|
||||
},
|
||||
"execution_count": 121,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"clusters"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"a = np.full((3,3),'',dtype=object)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"array([['', '', ''],\n",
|
||||
" ['', '', ''],\n",
|
||||
" ['', '', '']], dtype=object)"
|
||||
]
|
||||
},
|
||||
"execution_count": 98,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"a"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"a[:] = 'up'"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"a[1][2]='down'"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"array([['up', 'up', 'up'],\n",
|
||||
" ['up', 'up', 'down'],\n",
|
||||
" ['up', 'up', 'up']], dtype=object)"
|
||||
]
|
||||
},
|
||||
"execution_count": 93,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"a"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"array([[ True, True, True],\n",
|
||||
" [ True, True, False],\n",
|
||||
" [ True, True, True]])"
|
||||
]
|
||||
},
|
||||
"execution_count": 101,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"a=='up'"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"array([['up', 'up', 'up'],\n",
|
||||
" ['up', 'up', 'down'],\n",
|
||||
" ['up', 'up', 'up']], dtype=object)"
|
||||
]
|
||||
},
|
||||
"execution_count": 105,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"a"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.8.10"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
Reference in New Issue
Block a user