コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
こういち ◆ou0jbJnEJ0Kb
2019/8/28 9:39
問題
サンタさんは、自分の副業が空き巣だということを皆に打ち明けようと思っています。
任意の人に自分の正体を打ち明けたとき、その人は1/Nの格率で絶望し、サンタさんのファンをやめてしまいます。
M人に正体を打ち明けたとき、サンタさんのファンが一人も減らない確率の逆数を32768で割った余りを求めてください。

コメント

アバター
Na 2019/8/28 13:30 ◆QoELVrBXBQCI
できました!
A=1
FOR I=1 TO M
A=A*N/(N-1)
A=A-FLOOR(A/32768)*32768
NEXT
?A
アバター
ジプッチャ 2019/8/28 16:38 ◆tkYhkmSxSAam
そういう問題を夢で思いつくのか…すごいな
アバター
ツララ 2019/8/28 18:09 ◆ArUdBYOYME1V
最終的に確率が知りたいのなら分数の形で出力されるようにすればいいんじゃないんです?
実数を割った時の余剰を知りたいのなら
まず整数部分で余剰を出して、その後に小数点以下部分を足せばいいんじゃないんです?

サンタクロースの副業が空き巣だったっていうのを夢占い的に判断すると
どういうことなんでしょうかね?
最近人間不信に陥るような出来事があったとか?
シルエットクイズに凝ってるとか?
アバター
Na 2019/8/28 19:19 ◆QoELVrBXBQCI
>ツララさん
20億乗もしたら分子も分母もinfになってしまうので分数では表せません。
配列とか使って大きい桁でも計算できるように工夫しないとですね。
https://ja.wikipedia.org/wiki/%E4%BB%BB%E6%84%8F%E7%B2%BE%E5%BA%A6%E6%BC%94%E7%AE%97
整数部分の剰余を出そうにもMODやANDは整数型の範囲(約20億)を超えるとOverflowしてしまいます。
アバター
SatoshiMcCloud 2019/8/30 1:23 ◆Z1qfV11i63Jr
指数対数を使って考えてみました。
画像ではN=5、M=7のパターンを試しに計算してますが、他のもっと大きいパターンも試してみたい…試した上で正しいか検証したい…
アバター
SatoshiMcCloud 2019/8/30 1:25 ◆Z1qfV11i63Jr
画像の貼り忘れ
アバター
こういち 2019/8/30 17:47 ◆ou0jbJnEJ0Kb
ツララさん
Naさんや高原のなさんのコメントにもある通り分数でも厳しいかと。
サンタさんが空き巣なのは子供の頃から思ってました。

SatoshiMcCloud
新しいの来た。期待。
アバター
SatoshiMcCloud 2019/8/30 18:46 ◆Z1qfV11i63Jr
剰余と指数の関係を勘違いしてるらしく、検算したら全然違う結果になりました…もうちょい考えます
アバター
高原のな 2019/8/30 19:07 ◆bY8RViwvoODw
暇ができないようでできたので、とりあえず他言語で実装してみます
どんなコードが仕上がるか楽しみです(つらそう)

C++を利用予定です(気が変わってC#になりました)。これをプチコンに変換して戻ってきたとき、Wolfram Alphaさんと計算結果が小数点以下3位まで揃ったら勝ちってことで
アバター
SatoshiMcCloud 2019/8/30 19:17 ◆Z1qfV11i63Jr
とりあえず分かりやすいパターンから攻める。
N=2の場合、M<15なら余りは2のM乗、15<=Mなら余りは0
アバター
高原のな 2019/8/30 19:24 ◆bY8RViwvoODw
(SatoshiMcCloudさんの様子を見て思ったのだが、上手な素因数分解ができれば肥大化が防げるかも。
わたしのアプローチでは、Nが整数なら勝ち確定で、Nが実数ならまだゴリ押し実装しないと何もわからん)
アバター
SatoshiMcCloud 2019/8/30 19:36 ◆Z1qfV11i63Jr
(のなさんの書き込みで大事なことに気がついた。文面の限りじゃNが整数とは限らないじゃん…そうなるとN=2以外はゴリ押しするほか思いつかないなあ)
アバター
SatoshiMcCloud 2019/8/30 19:46 ◆Z1qfV11i63Jr
2<Nの場合について
アバター
高原のな 2019/8/30 19:47 ◆bY8RViwvoODw
SatoshiMcCloudさん>
N=2に限らず、N=2^k(Nの範囲より1≦k≦4, kは整数)というパターンはゴリ押しでなくてもなんとかなりそうです。
N*(N-1)が実数という発言があるので、Nは実数と捉えるのが妥当かなと

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -