2024-03-01から1ヶ月間の記事一覧

うーん

最近はホロライブのころさん(戌神ころねさん)を単推ししているのですが、すいちゃん(星街すいせいさん)の誕生日ライブの事でなんか炎上しているんだとか・・・。少し前にはみこち(さくらみこさん)の復帰ライブでも炎上してたとか・・・。まじかよ・・…

問題141 Scheme での実装例

Scheme で書いてみた。ロジックは先日書いた通りで、単にプログラムを起こしただけです。 (define (problem-141 limit) (let ((lim (expt limit (/ 1 4)))) (define (iter-k q p k sum) (let ((nn (* (+ (* k p p p) q) k q))) (if (>= nn limit) sum (iter-…

問題141を解く(その2)

解法のひとつです。 幾何数列に着目するってもの考えたんだけどなあ。 いまいち無理でしたw 幾何数列「a, ca, c^2 a」における比率を「c」とします。 gcd(p, q) == 1 の場合、c は p/q と書くことができます。 したがって、n^2 == c^3*a^2 + a がわかります…

問題141をやってみた

メインから。 時間を計るので、ちょいゴタゴタしてます。 1兆までなのでかなり時間がかかります。 いえ、力技コードなので処理時間は気にしてないですw #include <iostream> #include <chrono> int main() { long long limit = 1000000000000; std::chrono::system_clock::tim</chrono></iostream>…

整数の三乗根を誤差なしで求める

三乗根は Math 標準ライブラリの Pow を使って double val = Math.Pow((double)number, 1.0 / 3.0) こんな風に求められるけれども、number が整数のときは これでは誤差が出るので使い物にならない。なのでプログラムを自分で書く!呼び出し側。最近の .NET …

約数を求める(完全版)

(define nil '()) (define (gen-primes limit) (let ((v (make-vector (+ limit 1) 1))) (define (set-not-prime! ini-idx) (define (iter i) (if (> i limit) 'done (begin (vector-set! v i 0) (iter (+ i ini-idx))))) (iter (* ini-idx 2))) (define (in…

約数を求める

(define nil '()) (define (element-of-set? x set) (cond ((null? set) #f) ((equal? x (car set)) #t) (else (element-of-set? x (cdr set))))) (define (uniq set) (define (iter x s) (if (null? x) s (iter (cdr x) (if (element-of-set? (car x) s) s …

売れてないのん?

だからスクエニくんさあ・・・。 PS5 独占なんて売れなくなるからやめろって言ったやんけ。いわんこっちゃないわ。マルチプラットフォームでグローバル展開すんのがデフォやねん。はじめから PC で出せや。 MOD でティファやエアリスを・・・グヘヘ・・・ ・・…

円周率 π のお話

円周率って学校の授業では 3.14 と習うと思います。実際のより正確な値は3.14159265358979323846264338327950288 ...となり、小数点以下の桁が無限に続く値(無理数)です。小数点以下が無限に続く数をいちいち書くのは面倒なので、 記号で「π」(パイと読み…