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

質問編集履歴

3

質問文の修正

2020/06/09 08:01

投稿

wakahide
wakahide

スコア23

title CHANGED
File without changes
body CHANGED
@@ -23,7 +23,7 @@
23
23
  return _V[tuple(state)]
24
24
  ```
25
25
 
26
- エラーの行は、V(state)の下から2行目、
26
+ エラーの原因となっている行は、V(state)の下から2行目、
27
27
  ”for i in range(len(outcomes[j][0]))),outcomes[j][1]) for j in range(len(outcomes)))”です。
28
28
 
29
29
  エラーメッセージは以下が返ってます。

2

質問文の修正

2020/06/09 08:01

投稿

wakahide
wakahide

スコア23

title CHANGED
File without changes
body CHANGED
@@ -23,7 +23,26 @@
23
23
  return _V[tuple(state)]
24
24
  ```
25
25
 
26
+ エラーの行は、V(state)の下から2行目、
27
+ ”for i in range(len(outcomes[j][0]))),outcomes[j][1]) for j in range(len(outcomes)))”です。
26
28
 
29
+ エラーメッセージは以下が返ってます。
30
+ for i in range(len(outcomes[j][0]))), outcomes[j][1]) for j in range(len(outcomes)))
31
+ TypeError: can't multiply sequence by non-int of type 'float'
32
+
33
+ 試した修正としては、
34
+ ・ブランケットの位置を確認。
35
+ ・オリジナルの、”for i in range(len(outcomes[j][0]))) for j in range(len(outcomes)))”は正しく動いている。
36
+ ・for i in range(len(outcomes[j][0]))), j ) for j in range(len(outcomes)))では同様のエラー。
37
+ ・for i in range(len(outcomes[j][0]))), "1" ) for j in range(len(outcomes)))でも同様のエラーであるため、タップルにしてるのが原因かと推定。
38
+ ・max([ExpectedSpecies(state, nextSites[j][1])+
39
+ sum(outcomes[j][0][i][0]*V(list(outcomes[j][0][i][1]))
40
+ for i in range(len(outcomes[j][0]))),outcomes[j][1]) for j in range(len(outcomes)))
41
+ for i in range(len(outcomes[j][0]))), i] ) for j in range(len(outcomes)))をリスト型にしてみるがエラーを解決できず。
42
+
43
+ といった状況です。
44
+
45
+
27
46
  上記コードを補佐する関数が下記になります。
28
47
 
29
48
  ```ここに言語を入力

1

文章の修正

2020/06/09 07:18

投稿

wakahide
wakahide

スコア23

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,9 @@
1
- DP問題で、考察のためにタップルにして答えを返したいのですが、下から3行目
1
+ DP問題で、考察のためにタップルにして答えを返したいのですが、メイン関数の下の方の
2
2
 
3
3
  ```ここに言語を入力
4
4
  outcomes[j][1]
5
5
  ```
6
- を入るとエラーが生じます。色々と試行錯誤しているのですが、何がエラーの原因か特定できませんので、もし分かる方はご教授いただけないでしょうか。
6
+ タップルとして挿ると解にエラーが生じます。色々と試行錯誤しているのですが、何がエラーの原因か特定できませんので、もし分かる方はご教授いただけないでしょうか。
7
7
 
8
8
  outcomes[j][1]を入れなければ、解は返ってくるので、コード自体に間違いはなく、タップル化するとうまくループできずに、エラーになっているようです。
9
9