2008-06-04から1日間の記事一覧

problem 5

project euler 問題 5 です。1 から 20 の全ての数で割りきれる最少の数を求める問題。アルゴリズム自体は難しくないのですが、考えたロジックを scheme で表現するのに骨が折れました。素因数分解のロジックは先の問題でも使えるでしょうか。素因数分解の結…

problem 20

問題 16 と似たものが 問題 20 です。100! の数字の和を求める問題です。2^1000 が 100! に変わっただけです。 (define (fact n) (let loop ((i n) (m 1)) (if (= i 1) m (loop (- i 1) (* m i))))) (define (p20) (fold (lambda (x n) (+ (digit->integer x…

problem 16

project euler 問題 16 です。(関係ないけど何でこの段落だけ字下げ幅が大きいのだろう?なんでなん?)2^1000 の全ての数字の和を求める問題。 (use srfi-1) (define (p16) (fold (lambda (x n) (+ (digit->integer x) n)) 0 (string->list (number->strin…