16
どれだけ素早く増殖できますか?
最近のPython バッシングで、Pythonの強みを示す試みがあります。あなたの課題は、n10秒以内にできるだけ大きな数の階乗を計算するプログラムを書くことです。 あなたのスコアは (highest n for your program on your machine)/(highest n for my program on your machine) ルール 正確な整数解を計算する必要があります。階乗は64ビットの符号なし整数に収まるものよりもはるかに高いため、言語が大きな整数をサポートしていない場合は文字列を使用できます 標準的な抜け穴は禁止されています。特に、外部リソースは使用できません。 計算部分(これには文字列を使用した回避策の時間が含まれます)のみが合計時間に追加され、平均で10秒未満になります。 シングルスレッドプログラムのみ。 出力は簡単に印刷可能な形式(印刷に時間がかかるため)(以下のプログラムを参照)、文字列、変数、文字配列などに保存する必要があります。 編集: プログラムは、すべてに対して正しい出力を提供する必要がありますn。1 <= n <= (your highest n) EDIT2: 私はこれを明示的に言うのは嫌いですが、あなたの言語の組み込み階乗関数を使用すると、標準の抜け穴に陥りますhttp://meta.codegolf.stackexchange.com/a/1078/8766 すみません 私のプログラム from __future__ import print_function import time def factorial( n ): return reduce( ( lambda …