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

回答編集履歴

5

誤字訂正

2021/06/07 12:36

投稿

hoshi-takanori
hoshi-takanori

スコア7903

answer CHANGED
@@ -68,7 +68,7 @@
68
68
 
69
69
  ![イメージ説明](5c3946e7725da1c6ba2940fc6b589a60.png)
70
70
 
71
- また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、1 年は n = 365 日と考えると、これがカードの枚数に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
71
+ また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、1 年は n = 365 日と考えると、これがカードの種類に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
72
72
 
73
73
  で、100 日以上になる確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど i 日の確率をすべて足し合わせたものになるので、次のコードで描画できます。
74
74
 

4

コード修正

2021/06/07 12:36

投稿

hoshi-takanori
hoshi-takanori

スコア7903

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  ![イメージ説明](d63a3d731411116452dbb36346b194b1.png)
6
6
  は Python で書くとこうですね。
7
7
 
8
- ```py
8
+ ```python
9
9
  1 / pow(n, i)
10
10
  ```
11
11
 
@@ -13,7 +13,7 @@
13
13
  ![イメージ説明](e4f9362f64674d3584d886fc7cbab054.png)![イメージ説明](2f0d13b0d96c17305cb3d4ae404f1c6a.png)
14
14
  は [順列組み合わせ](https://note.nkmk.me/python-math-factorial-permutations-combinations/) の記号で、Python では次の関数で表せます。
15
15
 
16
- ```py
16
+ ```python
17
17
  def comb(n, p):
18
18
  return math.factorial(n) // (math.factorial(p) * math.factorial(n - p))
19
19
  ```
@@ -24,7 +24,7 @@
24
24
  ![イメージ説明](e31e1bdeb8bd63b4664193f53b5ce379.png)![イメージ説明](0d72303f60aeed92425cb6ad91369ed2.png)
25
25
  は h(0) + h(1) + ... + h(p) なので、Python ではこんなふうに書けます。
26
26
 
27
- ```py
27
+ ```python
28
28
  sum = 0
29
29
  for j in range(p + 1):
30
30
  sum += h(j)
@@ -34,7 +34,7 @@
34
34
  ![イメージ説明](4c61e104864e52d7d5c5186eba6479bc.png)![イメージ説明](f2705135e88b6ce895437519c6aa7967.png)![イメージ説明](656d96c8d29e595113a3e921fb272206.png)
35
35
  はこうですね。
36
36
 
37
- ```py
37
+ ```python
38
38
  pow(-1, p - j) * comb(p, j) * pow(j, i)
39
39
  ```
40
40
 
@@ -43,7 +43,7 @@
43
43
  以上をまとめると、最初の式は次の関数 f で表すことができます。
44
44
  (なお、引数 n はカードの種類、i は購入した枚数、p は何種類揃うかを意味します。)
45
45
 
46
- ```py
46
+ ```python
47
47
  import math
48
48
 
49
49
  def comb(n, p):
@@ -58,7 +58,7 @@
58
58
 
59
59
  これを使って、5 種類のカードを i 枚購入して全種類をコンプリートする確率のグラフを描画してみます。
60
60
 
61
- ```py
61
+ ```python
62
62
  import matplotlib.pyplot as plt
63
63
 
64
64
  x = range(0, 31)
@@ -70,9 +70,9 @@
70
70
 
71
71
  また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、1 年は n = 365 日と考えると、これがカードの枚数に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
72
72
 
73
- で、100 日以上になる確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど i 日の確率をすべて足し合わせたものになるので、次のプログラムで描画できます。
73
+ で、100 日以上になる確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど i 日の確率をすべて足し合わせたものになるので、次のコードで描画できます。
74
74
 
75
- ```py
75
+ ```python
76
76
  def g(n, i, p):
77
77
  sum = 0
78
78
  for j in range(p, min(i, n) + 1):

3

誤字訂正

2021/06/07 12:17

投稿

hoshi-takanori
hoshi-takanori

スコア7903

answer CHANGED
@@ -1,4 +1,4 @@
1
- 次の式は 3 つの部分に分けられます。
1
+ 次の式は 3 つの部分に分けて掛け合わせたものになります。
2
2
  ![イメージ説明](d63a3d731411116452dbb36346b194b1.png)![イメージ説明](e4f9362f64674d3584d886fc7cbab054.png)![イメージ説明](e31e1bdeb8bd63b4664193f53b5ce379.png)![イメージ説明](4c61e104864e52d7d5c5186eba6479bc.png)![イメージ説明](f2705135e88b6ce895437519c6aa7967.png)![イメージ説明](656d96c8d29e595113a3e921fb272206.png)
3
3
 
4
4
  まず、
@@ -11,10 +11,11 @@
11
11
 
12
12
  次に、
13
13
  ![イメージ説明](e4f9362f64674d3584d886fc7cbab054.png)![イメージ説明](2f0d13b0d96c17305cb3d4ae404f1c6a.png)
14
- は [順列組み合わせ](https://note.nkmk.me/python-math-factorial-permutations-combinations/) の記号で、Python で書くとこうなります。
14
+ は [順列組み合わせ](https://note.nkmk.me/python-math-factorial-permutations-combinations/) の記号で、Python では次の関数で表せます。
15
15
 
16
16
  ```py
17
+ def comb(n, p):
17
- math.factorial(n) // (math.factorial(p) * math.factorial(n - p))
18
+ return math.factorial(n) // (math.factorial(p) * math.factorial(n - p))
18
19
  ```
19
20
 
20
21
  最後に、
@@ -67,7 +68,7 @@
67
68
 
68
69
  ![イメージ説明](5c3946e7725da1c6ba2940fc6b589a60.png)
69
70
 
70
- また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、年は n = 365 日と考えると、これがカードの枚数に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
71
+ また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、1 年は n = 365 日と考えると、これがカードの枚数に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
71
72
 
72
73
  で、100 日以上になる確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど i 日の確率をすべて足し合わせたものになるので、次のプログラムで描画できます。
73
74
 

2

誤字訂正

2021/06/07 12:14

投稿

hoshi-takanori
hoshi-takanori

スコア7903

answer CHANGED
@@ -34,7 +34,7 @@
34
34
  はこうですね。
35
35
 
36
36
  ```py
37
- pow(-1, o - j) * comb(p, j) * pow(j, i)
37
+ pow(-1, p - j) * comb(p, j) * pow(j, i)
38
38
  ```
39
39
 
40
40
  ---

1

最後の説明を修正

2021/06/07 12:05

投稿

hoshi-takanori
hoshi-takanori

スコア7903

answer CHANGED
@@ -67,8 +67,10 @@
67
67
 
68
68
  ![イメージ説明](5c3946e7725da1c6ba2940fc6b589a60.png)
69
69
 
70
- また、社員が n 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、ちょうど 100 日開かれる可能性は f(365, n, 100) です。で、100 日以上の確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど n 日の確率をすべて足し合わせたものになるので、次のプログラムで描画できます。
70
+ また、社員が i 人いる場合に年間 100 日以上パーティーが開かれる確率ですが、一年は n = 365 日と考えると、これがカードの枚数に相当し、社員 i 人というのはカードを i 枚購入した場合に相当するので、ちょうど p = 100 日開かれる可能性は f(365, i, 100) です。
71
71
 
72
+ で、100 日以上になる確率は、ちょうど 100 日の確率と、ちょうど 101 日の確率と、(中略) ちょうど i 日の確率をすべて足し合わせたものになるので、次のプログラムで描画できます。
73
+
72
74
  ```py
73
75
  def g(n, i, p):
74
76
  sum = 0