Bool array for pixels

This commit is contained in:
2022-12-10 09:22:10 +02:00
parent 5849a1bab2
commit 81cd38b592
2 changed files with 9 additions and 373 deletions

21
10/j.py
View File

@@ -1,4 +1,5 @@
import os
import sys
input = open(os.path.dirname(__file__) +
"/input.txt", "r").readlines()
@@ -11,12 +12,7 @@ cost = {
H = 6
W = 40
screen = []
for y in range(H):
tmp = ''
for x in range(W):
tmp += '.'
screen.append(tmp)
screen = [[False for i in range(W)] for j in range(H)]
cycle = 1
X = 1
@@ -38,9 +34,7 @@ for l in input:
line += 1
if (pos == X-1 or pos == X or pos == X+1):
cur = screen[line-1]
screen[line-1] = cur[:pos] + "#" + cur[pos+1:]
screen[line-1][pos] = True
cycle += 1
@@ -52,7 +46,10 @@ print(sum(strs))
# p2
for y in range(H):
tmp = ''
for x in range(W):
tmp += screen[y][x]
print(tmp)
if (screen[y][x]):
print("#", end="")
else:
print(".", end="")
print()

View File

@@ -1,361 +0,0 @@
1 1 1
.#......................................
2 1 2
.##.....................................
3 16 3
4 16 4
5 5 5
.##..#..................................
6 5 6
.##..##.................................
7 11 7
8 11 8
9 8 9
.##..##..#..............................
10 8 10
11 13 11
12 13 12
.##..##..#..#...........................
13 12 13
.##..##..#..##..........................
14 12 14
15 4 15
16 4 16
17 17 17
.##..##..#..##...#......................
18 17 18
.##..##..#..##...##.....................
19 21 19
20 21 20
.##..##..#..##...##.#...................
21 21 21
.##..##..#..##...##.##..................
22 20 22
23 20 23
24 25 24
.##..##..#..##...##.##..#...............
25 25 25
.##..##..#..##...##.##..##..............
26 24 26
27 24 27
28 29 28
.##..##..#..##...##.##..##..#...........
29 29 29
.##..##..#..##...##.##..##..##..........
30 28 30
31 28 31
32 33 32
.##..##..#..##...##.##..##..##..#.......
33 33 33
.##..##..#..##...##.##..##..##..##......
34 32 34
35 32 35
36 37 36
.##..##..#..##...##.##..##..##..##..#...
37 37 37
.##..##..#..##...##.##..##..##..##..##..
38 36 38
39 36 39
40 1 0
#.......................................
41 1 1
##......................................
42 2 2
###.....................................
43 2 3
####....................................
44 26 4
45 26 5
46 7 6
####..#.................................
47 7 7
####..##................................
48 8 8
####..###...............................
49 8 9
####..####..............................
50 24 10
51 24 11
52 13 12
####..####..#...........................
53 13 13
####..####..##..........................
54 13 14
####..####..###.........................
55 13 15
56 34 16
57 34 17
58 19 18
####..####..###...#.....................
59 19 19
####..####..###...##....................
60 19 20
####..####..###...###...................
61 19 21
62 16 22
63 16 23
64 25 24
####..####..###...###...#...............
65 25 25
####..####..###...###...##..............
66 26 26
####..####..###...###...###.............
67 26 27
####..####..###...###...####............
68 23 28
69 23 29
70 31 30
####..####..###...###...####..#.........
71 31 31
####..####..###...###...####..##........
72 32 32
####..####..###...###...####..###.......
73 32 33
####..####..###...###...####..####......
74 37 34
75 37 35
76 37 36
####..####..###...###...####..####..#...
77 37 37
####..####..###...###...####..####..##..
78 37 38
####..####..###...###...####..####..###.
79 37 39
80 37 0
81 1 1
.#......................................
82 1 2
.##.....................................
83 1 3
84 2 4
85 2 5
86 9 6
87 9 7
88 9 8
.##.....#...............................
89 9 9
.##.....##..............................
90 9 10
.##.....###.............................
91 11 11
.##.....####............................
92 11 12
.##.....#####...........................
93 17 13
94 17 14
95 17 15
96 17 16
.##.....#####...#.......................
97 17 17
.##.....#####...##......................
98 17 18
.##.....#####...###.....................
99 17 19
100 18 20
101 18 21
102 18 22
103 18 23
104 25 24
.##.....#####...###.....#...............
105 25 25
.##.....#####...###.....##..............
106 26 26
.##.....#####...###.....###.............
107 26 27
.##.....#####...###.....####............
108 26 28
109 13 29
110 13 30
111 26 31
112 26 32
113 33 33
.##.....#####...###.....####.....#......
114 33 34
.##.....#####...###.....####.....##.....
115 33 35
116 34 36
117 34 37
118 1 38
119 1 39
120 1 0
#.......................................
121 1 1
##......................................
122 1 2
###.....................................
123 3 3
####....................................
124 3 4
#####...................................
125 3 5
126 3 6
127 3 7
128 11 8
129 11 9
130 11 10
#####.....#.............................
131 10 11
#####.....##............................
132 10 12
133 12 13
#####.....##.#..........................
134 12 14
135 13 15
136 13 16
137 13 17
138 30 18
139 30 19
140 21 20
#####.....##.#......#...................
141 21 21
#####.....##.#......##..................
142 22 22
#####.....##.#......###.................
143 22 23
#####.....##.#......####................
144 23 24
#####.....##.#......#####...............
145 23 25
146 20 26
147 20 27
148 31 28
149 31 29
150 31 30
#####.....##.#......#####.....#.........
151 31 31
#####.....##.#......#####.....##........
152 32 32
#####.....##.#......#####.....###.......
153 32 33
#####.....##.#......#####.....####......
154 32 34
155 33 35
156 33 36
157 33 37
158 33 38
159 20 39
160 20 0
161 1 1
.#......................................
162 1 2
.##.....................................
163 2 3
.###....................................
164 2 4
165 5 5
.###.#..................................
166 5 6
.###.##.................................
167 31 7
168 31 8
169 1 9
170 1 10
171 13 11
172 13 12
.###.##.....#...........................
173 12 13
.###.##.....##..........................
174 12 14
175 15 15
.###.##.....##.#........................
176 15 16
.###.##.....##.##.......................
177 16 17
.###.##.....##.###......................
178 16 18
179 16 19
180 16 20
181 16 21
182 7 22
183 7 23
184 25 24
.###.##.....##.###......#...............
185 25 25
.###.##.....##.###......##..............
186 26 26
.###.##.....##.###......###.............
187 26 27
.###.##.....##.###......####............
188 28 28
.###.##.....##.###......#####...........
189 28 29
.###.##.....##.###......######..........
190 28 30
191 28 31
192 37 32
193 37 33
194 37 34
195 37 35
196 37 36
.###.##.....##.###......######......#...
197 36 37
.###.##.....##.###......######......##..
198 36 38
199 38 39
.###.##.....##.###......######......##.#
200 38 0
201 1 1
.#......................................
202 1 2
.##.....................................
203 2 3
.###....................................
204 2 4
205 5 5
.###.#..................................
206 5 6
.###.##.................................
207 5 7
208 20 8
209 20 9
210 -1 10
211 -1 11
212 21 12
213 21 13
214 15 14
.###.##.......#.........................
215 15 15
.###.##.......##........................
216 16 16
.###.##.......###.......................
217 16 17
.###.##.......####......................
218 16 18
219 18 19
.###.##.......####.#....................
220 18 20
221 19 21
222 19 22
223 19 23
224 9 24
225 9 25
226 9 26
227 9 27
228 29 28
.###.##.......####.#........#...........
229 29 29
.###.##.......####.#........##..........
230 30 30
.###.##.......####.#........###.........
231 30 31
.###.##.......####.#........####........
232 32 32
.###.##.......####.#........#####.......
233 32 33
.###.##.......####.#........######......
234 34 34
.###.##.......####.#........#######.....
235 34 35
.###.##.......####.#........########....
236 28 36
237 28 37
238 17 38
239 17 39
240 17 0
13140
####..####..###...###...####..####..###.
.##.....#####...###.....####.....##.....
#####.....##.#......#####.....####......
.###.##.....##.###......######......##.#
.###.##.......####.#........########....
.##..##..#..##...##.##..##..##..##..##..