回答編集履歴
1
d
answer
CHANGED
@@ -1,14 +1,13 @@
|
|
1
|
-
一番外側の行または列を判定
|
1
|
+
一番外側の行、列または真ん中の列かどうかを判定するには以下のようにするべきではないでしょうか?
|
2
|
+
```python
|
3
|
+
is_edge = i == 0 or \ # 1行目
|
4
|
+
i == len(arr) - 1 \ # 最後の行
|
5
|
+
or j == 0 \ # 1列目
|
6
|
+
or j == len(row) - 1 \ # 最後の列
|
7
|
+
or j == len(row) // 2 # 真ん中の列
|
2
8
|
```
|
3
|
-
i == 0 or i == len(arr) - 1 or j == 0 or j == len(row) - 1
|
4
|
-
```
|
5
9
|
|
6
|
-
とするべきではないでしょうか。
|
7
|
-
```
|
8
|
-
i == 0 (1行目) or i == len(arr) - 1 (n行目) or j == 0 (1列目) or j == len(row) - 1 (m列目)
|
9
|
-
```
|
10
10
|
|
11
|
-
|
12
11
|
```python
|
13
12
|
arr = [["道" for i in range(19)] for j in range(10)]
|
14
13
|
arr[4][9] = "核"
|
@@ -19,7 +18,13 @@
|
|
19
18
|
|
20
19
|
for i, row in enumerate(arr):
|
21
20
|
for j, area in enumerate(row):
|
21
|
+
is_edge = i == 0 or \ # 1行目
|
22
|
+
i == len(arr) - 1 \ # 最後の行
|
23
|
+
or j == 0 \ # 1列目
|
24
|
+
or j == len(row) - 1 \ # 最後の列
|
25
|
+
or j == len(row) // 2 # 真ん中の列
|
26
|
+
|
22
|
-
if
|
27
|
+
if is_edge and area == "道":
|
23
28
|
print("+", end="")
|
24
29
|
else:
|
25
30
|
print(area, end="")
|
@@ -28,13 +33,13 @@
|
|
28
33
|
|
29
34
|
```
|
30
35
|
隅+++++++++++++++++隅
|
31
|
-
+道道道道道道道道道道道道道道道道
|
36
|
+
+道道道道道道道道+道道道道道道道道+
|
32
|
-
+道道道道道道道道道道道道道道道道
|
37
|
+
+道道道道道道道道+道道道道道道道道+
|
33
|
-
+道道道道道道道道道道道道道道道道
|
38
|
+
+道道道道道道道道+道道道道道道道道+
|
34
39
|
+道道道道道道道道核道道道道道道道道+
|
35
|
-
+道道道道道道道道道道道道道道道道
|
40
|
+
+道道道道道道道道+道道道道道道道道+
|
36
|
-
+道道道道道道道道道道道道道道道道
|
41
|
+
+道道道道道道道道+道道道道道道道道+
|
37
|
-
+道道道道道道道道道道道道道道道道
|
42
|
+
+道道道道道道道道+道道道道道道道道+
|
38
|
-
+道道道道道道道道道道道道道道道道
|
43
|
+
+道道道道道道道道+道道道道道道道道+
|
39
44
|
隅+++++++++++++++++隅
|
40
45
|
```
|