回答編集履歴

2

表示がうまくいかないので変更

2021/10/25 00:52

投稿

ppaul
ppaul

スコア24670

test CHANGED
@@ -1,4 +1,6 @@
1
+ ```plain
2
+
1
- ~~以下の入力データの場合、出力は0になるはずですが、tana1021さんのコードでは1が出力されます。
3
+ 以下の入力データの場合、出力は0になるはずですが、tana1021さんのコードでは1が出力されます。
2
4
 
3
5
  そのため、不正解となります。
4
6
 
@@ -12,11 +14,11 @@
12
14
 
13
15
  3 0
14
16
 
15
- ~~
17
+ ```
16
18
 
17
19
 
18
20
 
19
- 間違っていました。
21
+ 上記は間違っていました。
20
22
 
21
23
 
22
24
 

1

回答を修正

2021/10/25 00:52

投稿

ppaul
ppaul

スコア24670

test CHANGED
@@ -1,10 +1,8 @@
1
- 以下の入力データの場合、出力は0になるはずですが、tana1021さんのコードでは1が出力されます。
1
+ ~~以下の入力データの場合、出力は0になるはずですが、tana1021さんのコードでは1が出力されます。
2
2
 
3
3
  そのため、不正解となります。
4
4
 
5
5
 
6
-
7
- ```input
8
6
 
9
7
  3
10
8
 
@@ -14,4 +12,22 @@
14
12
 
15
13
  3 0
16
14
 
17
- ```
15
+ ~~
16
+
17
+
18
+
19
+ 間違っていました。
20
+
21
+
22
+
23
+ 原因は、整数と浮動小数点数の問題です。
24
+
25
+ np.linalg.normは浮動小数点数を返すので、actorbugさんが書かれているように誤差が出てしまいます。
26
+
27
+ 途中で浮動小数点数を使うと誤差は回避できません。
28
+
29
+ 言い換えれば、全てを整数演算で行えば正しく計算できるでしょう。
30
+
31
+
32
+
33
+ ヒントは「平行」です。