結果

問題 No.575 n! / m / m / m...
コンテスト
ユーザー 0w1
提出日時 2017-11-03 21:47:37
言語 Ruby
(4.0.7 + ACL)
コンパイル:
ruby -w -c _filename_
実行:
ruby _filename_
結果
AC  
実行時間 127 ms / 2,000 ms
+ 93µs
コード長 361 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 9 ms
コンパイル使用メモリ 8,704 KB
実行使用メモリ 15,360 KB
最終ジャッジ日時 2026-09-28 05:42:21
合計ジャッジ時間 3,369 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
raw source code

require 'prime'
N, M = gets.split.map &:to_i
pes = Prime.prime_division(M)
k = pes.map { |pe| 
  f = lambda do |n, p|
    r = 0
    z = p
    until n < p
      r += n / p
      p *= z
    end
    r
  end
  f[N, pe[0]] / pe[1]
} .min
log10ans = Math.lgamma(N + 1)[0] / Math.log(10) - k * Math.log10(M)
puts "#{10 ** (log10ans - log10ans.to_i)}e#{log10ans.to_i}"
0