質問するログイン新規登録

質問編集履歴

2

質問文変更

2022/06/16 10:41

投稿

rikut0
rikut0

スコア3

title CHANGED
File without changes
body CHANGED
@@ -5,6 +5,8 @@
5
5
  行きと帰りの関数を作り、行きでは通った経路を記録していき探索を続け、(6,6)の地点に到達したら、帰りの関数を呼び出すプログラムを作ります。
6
6
  帰りの関数では、行きの経路を避け探索し、経路を見つけたらカウントしていくプログラムを作ります。
7
7
  以下のようにコードをなんとなくですが、作成してみました。
8
+ 今回実行するとcountが0と表示されました。上手く動いていないことはわかるのですが、
9
+ どこをどのように改善すればよいのでしょうか。
8
10
  ご助言よろしくお願いします。
9
11
 
10
12
  ```

1

(n,n)までと実際の数値でなく変数に置き換えました。

2022/06/16 10:38

投稿

rikut0
rikut0

スコア3

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,4 @@
1
- X-Y座標(0,0)から(6,6)までをマス?の境界を通り最短経路で往復する場合を考えます。
1
+ X-Y座標(0,0)から(,)までをマス?の境界を通り最短経路で往復する場合を考えます。
2
2
  行きで通った経路は帰りでは通れません。
3
3
  このとき、最短経路のパターンを数えるプログラムをpythonで作成したいです。
4
4
  考えたプログラム構造としては、
@@ -12,6 +12,7 @@
12
12
  #これが0か1かで経路を通ったか判断
13
13
  #path_keiro[i][j][0]はx+1へ
14
14
  #path_keiro[i][j][1]はy+1へ
15
+ n=int(3)#今回は3とする
15
16
  i =int(0)
16
17
  j=int(0)
17
18
  #i,jはそれぞれ(x,y)座標の(i,j)とする
@@ -20,15 +21,15 @@
20
21
  def Ouro(i,j,path_keiro):
21
22
 
22
23
 
23
- if i==j==6: #行きの探索終了 帰りのプログラムを実行
24
+ if i==j==: #行きの探索終了 帰りのプログラムを実行
24
25
  return kiro(i,j,path_keiro)
25
26
 
26
- elif i<6 and path_keiro[i][j][0]==0:
27
+ elif i< and path_keiro[i][j][0]==0:
27
28
  path_keiro[i][j][0]=1
28
29
  Ouro(i+1,j,0)
29
30
 
30
31
 
31
- elif j<6 and path_keiro[i][j][1]==0:
32
+ elif j< and path_keiro[i][j][1]==0:
32
33
  path_keiro[i][j][1]=1
33
34
  Ouro(i,j+1,0)
34
35