砂場で遊ぼう

c++/python/mathematica などの練習帳

2021-11-01から1ヶ月間の記事一覧

Project Euler 005 / 最小の倍数(Smallest multiple)

問題概略 for ループで最小公倍数を計算 reducdeで畳み込み 問題概略 1 から 20 までのすべての整数で割りきれる最小の自然数を求めよ。https://projecteuler.net/problem=5 for ループで最小公倍数を計算 答えは 1 から 20 までの数の最小公倍数です。LCM …

Project Euler 004 / 最大の回文積(Largest palindrome product)

問題概略 積を作って回文数判定 回文数を作って積に分解 問題概略 3 桁の数の 2 つの積で表される回文数(左右どちらから読んでも同じ値になる数)の最大値を求めよ。https://projecteuler.net/problem=4 積を作って回文数判定 3 桁の数 , の積を作って で回…

Project Euler 003 / 最大の素因数(Largest prime factor)

問題概略 factorintで素因数分解 問題概略 600851475143 の素因数の中で最大のものを求めよ。https://projecteuler.net/problem=3 factorintで素因数分解 sympy の factorint で素因数分解します。sympy.factorint(600851475143) の結果は「素数:指数」の辞…

Project Euler 002 / 偶数のフィボナッチ数(Even Fibonacci numbers)

問題概略 2 で割った余りの周期性を利用 漸化式を使う 問題概略 400 万以下で偶数値のフィボナッチ数の総和を求めよ。 https://projecteuler.net/problem=2 2 で割った余りの周期性を利用 番目のフィボナッチ数を であらわして,これを 2 で割った余りを考え…

Project Euler 001 / 3か5の倍数(Multiples of 3 or 5)

問題概略 for ループ 内包表記 関数を定義 問題概略 1000 未満の自然数で,3 か 5 の倍数であるものの和を求めよ。https://projecteuler.net/problem=1 for ループ 愚直に for ループをまわして条件をみたすものの和を計算します。 ans = 0 for i in range(1…