2009-01-01から1年間の記事一覧

イテレートの書き方

上で議論したように, リストの操作を簡単に書くのは各言語, 特に LL と呼ばれる言語たちでサポートされてきています. C の直系と言える Java でも拡張 for 文が導入されましたし. 一旦それに慣れてしまうと, もう C の for 文には戻れません(苦笑)そこで, 同…

python の内包表記で list の flatten を書く

(以下, Python 2.6.4 でやってます.)python には内包表記という filter, map, reduce の代替ができるような表記方法があります. 詳しくは検索してもらうとして, 今回のネタはその内包表記で flatten という関数を書こうというものです.flatten というのは, …

CocoaEmacs on Snow Leopard の世話

バックスラッシュを入力 さて, 無事 CocoaEmacs も動くようになったが, またしても問題が……. バックスラッシュが JIS キーボードで入力できない……. C で改行コードが出力できない……. 今までは "option + \" で入力できていたのが, option が Meta キーにバイ…

CocoaEmacs に muse 入れたよ!

さて以前の日記で CocoaEmacs のビルドが無事に終わった訳だが, 文章を書くとなると Emacs muse が欲しくなります. 説明しておくと, Emacs muse というのは wiki に似た記法で文章を記述でき, Emacs 上では文章が整形されて表示されます. また, html, xhtml,…

Snow Leopard に CocoaEmacs インストールできました.

これまでの流れ 以前 CocoaEmacs をインストールしようとして失敗し, 一先ず Aquamacs Emacs を入れることで凌いでいました. しかし, emacs muse をインストールする段になって, path にスペースが含まれてしまっている("Aquamacs" と "Emacs" の間)ことでイ…

Snow Leopard で使える Emacs 探し

Snow Leopard にしてから Carbon Emacs が使えず困っている. 起動してもすぐに終了するし, Rosetta を使って起動してもしばらくすると落ちてしまう. 俺はほとんどの文章の下書きを Emacs 上でやっていたが, Emacs が無い生活をしてみて「Emacs って身体の一…

iPhone アプリのインストールで引っ掛かったこと

iPod touch も買ったし, Mac mini も新調して, Snow Leopard も入れたし, 上がったテンションの勢いで iPhone アプリの開発をしようと思いました.しかしその勢いを削ぐかのように, 初めての実機へのインストールは手順が分かりづらかったです. そこで躓いた…

インストールッ!!

遂にインストールを断行しました. SafariStand を使いたいがために, Safari は 32bit 起動だけど, そこから初めての雪豹からはてダ書いてます. さてさて, これからやらなきゃいけない作業が色々〜.

やっと到着!!

6月に Mac mini を新しく買った際に, 980円で手に入れたアップグレード版の Snow Leopard が遂に家に来ました!8/28 に着くのかと思っていたら, その日届いたメールには「8/28 発送 9/2 配送予定」との文字が……orz mixi, Twitter, ブログその他で起こる喜びの…

TopCoder 始めました

この記事や同僚の話などで存在は知っていた TopCoder. 今日, 思い立って登録してアルゴリズム部門のところを2問ほど解いてみた. 問題の色としては Project Euler に近かったりもするので, 楽しめそうだ. まだ良く分かってないところとしては, 以下の感じ. ja…

21問目

を真の約数( の約数のうち より真に小さいもの)の合計と定義する. もし かつ であり の場合, と を友愛数と呼ぶ.例えば, 220 の真の約数は 1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110 なので . 284 の真の約数は 1, 2, 4, 71, 142 なので .10000 未満の全ての…

19問目

以下のような情報があります. また, 各自で調査しても良いでしょう. 1900年1月1日は月曜日. 小の月は9月, 4月, 6月, 11月. 残りは2月を除いて大の月. 2月は通常は28日だが, 閏年では29日. 閏年は, 4年に1度あり, 100年に1度は閏年でなくなり, さらに400年に1…

17問目

数字の1から5までを単語で書くと one, two, three, four, five となり, 全部で3+3+5+4+4=19文字使っています. では, 1から1000(one thousand)までを単語で書くと何文字使うでしょうか?メモ: ハイフンや空白は数に数えません. 例えば, 342 (three hundred and…

14問目

正の整数の数列が以下の反復規則で定められている. . 上記のルールを使って13から始めると, 次の数列が得られる. . この数列には(13から1まで)10個の数字が含まれている. これはまだ未解決問題(Collatz 問題)なのだが, どの数字から始めても1に辿り着くと考…

プロジェクト・オイラー 14, 17, 19, 21問目

やっべぇ, 最近問題を解いてもいなかったし, ブログも書いてなかった(-_-; ついつい仕事にかまけて, エントリを書く気力がありませんでした…….

ついに買いました!

ボーナスを待って, 新しい Mac mini を買いました. さて, 昔の環境を移行したり新たにアプリを入れたりする作業をしましたが, 次やるときに迷わないように備忘録. たいていの設定などは「移行アシスタント」で移行できてるので, 予想してたより楽に移行でき…

63問目

5桁の数 は5乗数でもある. 同様に, 9桁の数 も9乗数である.桁の数でもあり, 乗数でもある正の整数はいくつあるか? http://projecteuler.net/index.php?section=problems&id=63 これは数学で考察を進めるだけで解けました. より, を計算して, 終了.

48問目

である. の下10桁を求めよ. http://projecteuler.net/index.php?section=problems&id=48 実装自体は簡単だと高を括って powMod 関数を作ってみたが, 桁あふれに上手く対処できず, 結局 gmp さんの力を借りることにしました. #include <stdio.h> #include <stdlib.h> #include "p</stdlib.h></stdio.h>…

18問目

下図の三角形に並べられた数字の一番上からスタートして, 1つ下の行の隣接する数字に移動していったとき, 通った数の合計の最大値は23. つまり, . (訳注. 実は, というルートでも良い.)では, 次の三角形に並べられた数字の一番上から一番下までの合計の最大…

12問目

三角数からなる数列は, 自然数を次々と足していくことで得られる. 7番目の三角数は になる. 数列の最初の10項は, となる.三角数の最初の7項について約数を列挙すると, となる. これから, 28 が約数の数が5を越える最小の三角数だと分かる.では, 約数の数が 5…

ぷろじぇくと・おいらー 12, 18, 48, 63問目

プロジェクト・オイラーの問題を解き進めてはいたのですが, ブログに書くのをちょっとサボってました(^-^; まとめてエントリに書きます.ちなみに, この4問を解いたことで計25問解いたことになり, 無事 Level1 になれました. パチパチパチ〜.

Safari 4 正式版出た出た

↓この頃から待ち焦がれていた, Safari 4 正式版をインストールしました. http://d.hatena.ne.jp/cocoatomo/20090225/1235576351 http://d.hatena.ne.jp/cocoatomo/20090224/1235491357前みたいに, Ajax 的なブログパーツがあったりするとスクロールが固まっ…

問題34

145 は興味深い数字である. なぜなら, となるからである. 各桁の数字の階乗の合計が自身と等しくなる数の合計を求めよ. ただし, と は含まない. http://projecteuler.net/index.php?section=problems&id=34 「問題30と同じじゃん. プログラムがそのまま使え…

問題30

驚くべきことに, 各桁の数字を4乗して合計すると元の数字になる数字は次の3つだけである. ただし, は含まない. それらの数の合計は, .では, 各桁の数字を5乗して合計すると元の数字になる数字の合計を求めよ. http://projecteuler.net/index.php?section=pro…

プロジェクト・オイラー 問題30, 34

今回のは brute force (力尽く)でした. 問題34では屈辱的なミスを犯し, 凹んでおりますorz

25問目

Fibonacci 数列は再帰的な関係式によって定義されている. . 従って, 最初の12個は, となる. 12番目の が初めて3桁になる数字である.では, 初めて1000桁になるのは何番目か? http://projecteuler.net/index.php?section=problems&id=25 以前の問題 (問題2改 -…

24問目

順列は順序が付いた物の並べ替えのことである. 例えば, 3124 というのは 1, 2, 3, 4 という数字の順列の一つである. 全ての順列が数字順もしくはアルファベット順に並んでいるとき, それを「辞書順(lexicographic order)」と呼ぶ. 0, 1, 2 の順列を辞書順に…

20問目

は という意味である. の各桁の数字の合計を求めよ. http://projecteuler.net/index.php?section=problems&id=20 えぇ, またですか, そうですか. そんなに C をいじめたいですか?? 「助けて〜, pari えも〜ん. Project Euler がイジめるよ〜. 」と再び pari/…

16問目

であり, その各桁の数字の合計は . では, の各桁の数字の合計は? http://projecteuler.net/index.php?section=problems&id=16 エグい, エグすぎる!! またしても, C の苦手な ULLONG_MAX を越えた数の操作ですか!? しかも, 今回はどう考えても数学を使った回…

プロジェクト・オイラー 問題16, 20, 24, 25

今回はライブラリや数学を使ったものが多く, 実装自体は楽でした.