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

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

コメント

アバター
こういち 2019/8/28 9:42 ◆ou0jbJnEJ0Kb
入力は次のように与えられるので、INPUTやLINPUTなどで受け取れるようにしてください。ガイド文字列は不要です。
N,M

1<N≦20
0≦M≦2147483647
アバター
こういち 2019/8/28 10:12 ◆ou0jbJnEJ0Kb
余りの部分が厄介なのでちょっと変更しました。
アバター
Soybeanman 2019/8/28 10:32 ◆SDLkyXUP6WqK
なんも捻ってない上に確率はあんまり得意でないので結構怪しいですが
PRINT (1/POW((n-1)/n,m))MOD 32768
でどうですかね
アバター
Na 2019/8/28 11:24 ◆QoELVrBXBQCI
絶望する確率=1/N
絶望しない確率=1-1/N=(N-1)/N
M人が絶望しない確率=POW((N-1)/N,M)
M人が絶望しない確率の逆数=1/POW((N-1)/N,M)=POW(N/(N-1),M)
M人が絶望しない確率の逆数を32768で割ったあまり
=POW(N/(N-1),M) MOD 32768
だがMODは整数除算のため2147483647までしか扱えないので
?POW(N/(N-1),M)-FLOOR(POW(N/(N-1),M)/32768)*32768
とりあえずOverFlowもDivide by zeroもしないはず

>こういちさん
条件は1<Nが正しいと思われます
アバター
こういち 2019/8/28 11:57 ◆ou0jbJnEJ0Kb
(やばい。これ自分でも解けない。想像以上に難しい。)

コメントを書く

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

- WEB PATIO -