2009-05-01から1ヶ月間の記事一覧

漸化式と再帰

引き続きprojecteulerの先日のお題P57とP58 両方とも、漸化式で記述できるので、まんま、再帰で書いたら終わらない。 まぁ、毎度毎度1から計算するんじゃ無駄だよね、ということで、 計算が終わったものからリストに入れていくことにした。 現項目を計算する…

Editra?Komodo?

この日記は慣れないMacで書いているのだけど、ってのはMacでpythonを どうしたものかという試行錯誤の続きだから。 結局のところ、Mac版のIDLEは激しく使いづらいことが判明した。 かといって、Macも使いたい私はちょっとeclipseを使ってみた。後悔した。近…

MacにもIDLEがあった

気がつかなかったのだけど、MacPortsで入れたら自動的に?入っていたみたい。ただ、いろいろと微妙にWidnowsと使い勝手が違うのがなんだなぁ。

Python on Mac

少し前にMacを入手したはいいのだけど、長年Windowsに毒された?わが身はなかなかMacになじめない。 ま、ターミナルを開いてしまえば、そこはBSD worldなので、少しばかり違和感は減るといえば減るのだけど。特に今こなしているprojecteulerはPythonがないと…

P59で悪戦苦闘中

keyのレンジがaaa-zzzというのは分かっているのだけど、当たりが出なくて迷ってる。 "the"とか"to"とか"was"辺りで当たり判定かけてみると、候補はボロボロ出てくるのだけど、 実際それで解いてみると英文にならない。何かアプローチがまずい気がするのだけ…

問題はよく読みましょう!?

引き続きprojecteulerですが、今日はP47で軽くはまりました。Problem 47 - PukiWiki から抜粋 ここから----- 連続する2つの数がそれぞれ2つの異なる素因数を持つのは * 14 = 2 × 7 * 15 = 3 × 5 の場合である.同様に連続する3つの数がそれぞれ3つの異なる素…

良いブルートフォース、悪いブルートフォース

projecteulerのP45、楽勝だと思ったけど、甘かった。 字面どおりにブルートフォースしたら終わんない。六角数は三角数を含むと分かれば話は早いんだけど。 これに気づかなくて無駄な計算を延々とやっていた。 もったいない。もちろん、もっと賢い解法もある…

ナップサック問題!?

projecteulerのP31が未解答で詰まっている。 なんとなく、再帰で解けそうな気はしているのだけど、うまく表現できない。一方で、この手の問題はナップサック問題に帰着できる(のか似ているのか、その辺りは?) らしい。コンピュータサイエンス畑を歩いてい…

projecteuler落ちてる(た)?

本日15:40(JST)ころ、Archived Problems - Project Eulerにアクセスできない状態に?! ほかのサイトは大丈夫なのでPCの問題ではないっぽいのだけど。結局、ダイクストラは分かったような分からんような。 最終的には動的計画法 - Wikipediaで何とかなった…

Dijkstraが分からん(涙)

いや、正直、読めなかったというのもあるんだけど(苦笑)この最短距離を求めるアルゴリズム、順を追って考えていってもなぜか正解に当たらない 気がする。 どっかではしょっているか勘違いしているんだと思うのだけど、何がどうなっているんだか、 よく分か…

コンプレックスを刺激される

引き続き、projecteulerなのだけど、今日は問題も分かって解法も分かっているのだけど、 うまくコードに落とせない、というところではまりまくってしまった。デバッグ(というほどでもない)していると、明らかにおかしな条件判定を行っているのが 分かるの…

変数の命名は計画的に

これは二つの意味でいまさらシリーズなのだけど。 その1:projecteulerネタであること その2:タイトルどおりお恥ずかしい話、P23がなかなか解けなくて。 解けないというのは、いくつかパターンがあります。a.問題の意味が理解できない:これはプログラム以…

level1に到達

最近、血道をあげているprojecteulerですが、本日、やっとこさ25問解いて level1に到達しました。 その後、2問追加で解けたものの、まだ未解決の積み残しが。 先はまだまだ長い。

日記に見出しがついてない?

091211:ようやく解決 ちょっと前から気になっていたのだけど、見出しがきちんと表示されてないっぽい。 いや、多分、単に私がよく分かってないだけだと思うのだけど。プログラムも英語も数学もはてなも我流?でやってきたからなぁ。どっかでつまずくとなか…

ノートPCと光学ドライブと

手元にノート用のCD-ROM!とDVD-RWドライブ(どちらも、いわゆるベアドライブ)が あったので、どうにかこうにかできないかと、PS/PLAZAのWebを見てみた。 やはり、そういう需要があるらしく、USB接続に変換する用のケースがありました。出かける用事があっ…

高速道路が渋滞してきた?

いや、祝祭日、土日の限定のあれではなくて。 id:umedamochioの言うところの学習の話です。 projecteulerをちまちま解いているのですが、1問辺りのランキングの上がり方がじわじわ 鈍くなってきているなぁ、と。 とはいえ、現状、人様に自慢できるレベルので…

電池付属言語

pythonは電池付属言語という触れ込みですが、まぁ、確かにそうかも。 projecteuler:P19がカレンダー問題です。まぁ、正攻法であれば、7進数でごにょごにょしてうるう年を計算して...とやるんでしょうけど、私は他の問題に労力を振り向けたい(というか、他…

Project Eulerからのmail

20091211:タイトル修正 解くペースが遅いとか、何度か間違えているからその件かと思ったら、違った。Problem 245 will be accessible on Fri 15 May 2009 at 2.00 pm [GMT].だそうな。そう言われてもな。 ようやく問題11/12/13を片付けて、当然ながらlevel1…

オイラーが読めなかった

いろいろぐぐっていたら、Python使いの方の日記で About - Project Eulerなるものを発見。このつづりが最初に分からなくて、ユーロ?なんて思ってましたが、オイラーでした。 はい、数学の素養がないことがバレバレです。コンピューターと数学の知識がないと…

amazonEC2が意外に遅い?

いまさらシリーズでもないんですが、AmazonEC2です。 実は2月からちょろちょろいじっているのでいまさらシリーズでもない?のですが。手元のThinkPadT60で2分程度かかる処理(DES24bitブルートフォースアタック) が6分程度かかる。 よくよく値段表を見ると…

stdoutではまる

安全仕様というのはありがたいものなのだけど、時として邪魔になることも。たとえば、同じドイツ車でもBMWはドライバーを信用するので、過剰な安全設備はないらしい。 一方でAudi/Bentzはドライバーを信用していない(というか、ドライバーは正常な判断が で…

DESのパリティビット

引き続きDESを追っていますが、妙なことに気づきました。 鍵は64bitをフルに使用しているのですが、鍵のうち、LSB(Byteの方)を変化させても暗号文が 変化しないことが(一部)見受けられます。例) $ openssl enc -des-cbc -in wiki_des.txt -out wiki_des…

Javaは安全実装

先日のDES暗号化処理の測定を引き続き。 Java純正で提供されるライブラリ(JCE)を使用して処理させてみた。 IVを渡して暗号化するサンプルが見つからなくて往生したけど、最終的にはどうにか。 出力ファイルのMD5が(M2Cryptoの結果と)合致するので、大丈…

RC4の補足とM2Crypto(EVP)の訂正

先日のRC4 RC4(pycryptoなど)の続き - skobayasの日記 の補足です。いやぁ、考えてみれば、ストリーム暗号そのものがCBCみたいなもんなんで、 復号化する前に初期化が必要なのは「当たり前」なことにふと気がつく始末。それと、先日の記事 M2Crypto - skob…

Python高速化計画@google

今更ネタではあるのだけど、googleがGAEのJava対応(予定)にあわせて発表したとか言う話。 Google、App EngineでのPythonのパフォーマンスを改善へ - ITmedia エンタープライズ それとは別にエイプリフールネタも発見してしまった psyco を超える Python の…

もう一つのダビンチ・コード

引っ越してからCATVが見れるようになったので、ちょくちょく見ているのだけど、 そうそう時間はないので、とりあえず録画して、後で飛ばしながら見るという、 まぁありがちな視聴パターンを実践してます。今日はたまたま「もう一つのダビンチ・コード」なる…

フェアトレードとしてのbigissue

昨日、新宿で遂に?ビッグイシュー(The Big Issue)を買ってみた。 前から気になってはいたのだけど、どうも踏ん切りがつかなかったので。踏ん切りがつかなくて躊躇している間に?200円から300円に値上がりしていた。 で、気になる内容は。てっきり、今の経…

DESとRC4のベンチマーク(PycryptoとM2Crypto)

散々苦労した?挙句、ようやくPyCryptoを使えるようになりました。 RC4(pycryptoなど)の続き - skobayasの日記となると、気になるのはその速度。まずはDESから 64bitのランダムキーで48MByteのファイルを暗号化/復号化します。m2crypt encrypt needs 1.2190…

RC4(pycryptoなど)の続き

pycrypto(のRC4)が期待通り動いてくれないのは先日書いた なんちゃって暗号ファイルシステムの実装 - skobayasの日記 通りですが、ようやく正解?を見つけました。これはDESやAESといったブロック暗号でCBCモードを使用する際に気をつけなければいけないこ…

M2Crypto

opensslのpythonラッパーのM2CryptoにはEVPインターフェースというものがありまして、 これを使用すると各種暗号方式を高レベルインターフェースで叩くことできる、 ということになってます。 (正確にはopensslレベルでEVPインターフェース(オブジェクト指…