• ベストアンサー

1年の全ての日が天皇誕生日で埋まるのは何年後?

天皇陛下のご在籍の年数が一定(たとえば30年)と仮定した場合1年の全ての日が天皇誕生日で埋まる期待値は何年後になりますでしょうか?ただし、天皇誕生日が重なったら振替はないものとします(たとえば未来の天皇陛下のご誕生日が12/23であっても平成天皇のご誕生日とかさなっているからといって12/24に振り返ることはしない)また、現在の他の祝日についても振替は無視します。学生時代計算した覚えがあるのですが、そのやりかたをすっかり忘れてしまいました。

質問者が選んだベストアンサー

  • ベストアンサー
  • motsuan
  • ベストアンサー率40% (54/135)
回答No.4

この数は ... が乱れてしまいました。 ΣN/(N-n)+1=N∫(y=0~1)Σy^(N-n-1) dy + 1 =N∫(y=0~1)(y^(N-1)-1)/(y-1) dy + 1 とかやれば計算できるとおもいます。 です。∫(y=0~1)dy は0から1で積分するという意味です。 失礼しました。 なんかもっと簡単な考え方があるような気がしますが 私の考えたところは以上のようなものです。

noname#5113
質問者

お礼

すみません。わかりました。かんたんでした。 1年のうちN日が天皇誕生日で埋められていると、N日目を決められた 天皇陛下のあと(365/(365-N))代目の天皇陛下が次(N+1日目)の天皇 誕生日が確定するようです。エクセルを使って統計的に計算したら そうなりました。(すみません証明はできません。どなたか証明してください) よって、 365/(365-0)+365/(365-1)+…365/(365-364)≒2364.64602344 代目に365日埋まります。motsuanさんの回答と一致しましたね! これに在籍年数30年を掛け、約70939年後になりますね。 ありがとうございました。

その他の回答 (3)

  • motsuan
  • ベストアンサー率40% (54/135)
回答No.3

365日のうちn日誕生日で埋まっていて次の1日を埋めるために必要な人数の期待値<x_n>は x-1代だめでx代目で初めて違う1日なったとすると、 p_n=(365-n)/365として <x_n> = Σ x (1-p_n)^(x-1) p_n (x=1~∞についての和) = 1/p_n. よって、 Σ<x_n> (n=1~365-1についての和)+1=Σ365/(365-n)+1 となるのではないでしょうか?(+1は最初の一人ぶんです) この数は ΣN/(N-n)+1=N∫(y=0~1)Σy^(N-n-1) dy (y=0~1) + 1 =N∫(y=0~1)(y^(N-1)-1)/(y-1) dy - とかやれば計算できるとおもいます。 Mathematicaで計算すると N*(EulerGamma + PolyGamma[0, N]) + 1 とかゆう関数になるようで、下のアルゴリズムで実験したところ N=10までは一致するようです。 N=365すなわち問題の場合は 2364.65(単位:代) です。 以上は微分方程式 dn/dx= (N-n)/N (Nが365日、nが埋まった日にち、xがx代目) から逆に考えたものです(連続なので永遠にNに到達しないのですが 離散的に考えれば上のようになるかと思います)。 --------------計算につかったアルゴリズム(Mathematica)------------------- (* maxnumber:サイコロの目の最大数, trialnumber:試行回数 を与えて全部の目が出るまでにかかる回数の平均を求めます。 *) Monte[maxnumber_, trialnumber_] := Module[ (*局所変数の宣言*) {countcount , count, lis}, (*サイコロの定義:1~maxnumberの目がランダムにでます*) Dice[] := Ceiling[maxnumber*Random[]]; (*何回で全部の目が出たかを数えたcountを毎回足し合わせて最後に試行回数で割る*) countcount = 0; (*trialnumberだけ繰り返す*) For[i = 0, i < trialnumber, i++, (*出てきた目のリスト*) lis = {}; (*何回サイコロをふったか*) count = 0; (*出てきた目のリストの長さがmaxnumber以上になるまで続ける=全部の目がそろうまで*) While[ Length[lis] < maxnumber, (*サイコロを振ったので1つ加える*) count++; (*重複を許さず出てきた目をリストに保存*) lis = Union[ lis, {Dice[]}]; ]; (*全部の目がそろうまで掛かった回数を足し合わせる*) countcount +=count; ]; (*最後に試行回数で割って平均をとる*) countcount/trialnumber ];

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.2

訂正です。在籍年数30年を忘れていました。 10389人目で、311670年後です。

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.1

うるう年は考えず、1年を365日とします。 任意の1日を考えて、それがn人の天皇の誕生日と重ならない確率は (364/365)のn乗ですよね。 これを365倍しても1日に満たなくなる場合を求めればよいわけですから、 n*log(364/365)<log(361/365) となるnではどうでしょうか。 私の計算では10389年後となりましたが。

noname#5113
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう