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

Project Euler 96

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=96 最後に残しておいた問題、それがこのナンプレとか数独とか呼ばれるパズルを50問解く問題。元々これを解くPythonのプログラムは作ってあったのだが、そのためにかえってどう…

Project Euler 256(2)

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=256 ゴールが見えていて(純粋にプログラミングの問題になって)これだけ苦しめられたのは、どの問題以来だっただろうか。昨夜寝ながら考えていて(寝不足になった)、畳を敷き…

Project Euler 256

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=256 畳の敷き詰め方。これは難しいのではないかと思う。今のところ何も思いついていない。とりあえず、7×10は敷き詰められないことは以下のコードで確かめられる。

ヤッソ800

800mを10本、400mでつなぐ。そして、800mを4分で走れたらフルマラソン4時間、3分なら3時間で走れるという目安に使われるらしい。恐らく、計算が苦手なアメリカ人のために開発されたのだろう。いくつかのブログを見ていても、この設定タイムは甘い。予約シス…

Project Euler 210

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=210 これにもやはり数値計算上のトラップが。この問題は、おおざっぱに言うと、円の内側にある格子点の個数を数える。例えば、xy平面を考えて、中心が原点で半径rが10だとする…

Project Euler 177

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=177 意外なトラップが。 角度を求めるのにasinを使ったのだが、 asin(1.0) = π / 2 となるところが、大きく値がずれて、10-9のトレランス内に入らずに整数の角度の組から落ちて…

Project Euler 219

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=219 Outstanding, inamori! You have advanced to the highest level possible. ということで、おそらく最後のレベルアップをした。世界で98番目。ここまで長かった。あと5問。…

Project Euler 255

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=255 この問題はやさしい。 例題をふつうに書くと、 def div_ceil(n, d): return (n + d - 1) / ddef f(n, x): return (x + div_ceil(n, x)) / 2def count(n): counter = 1 x0 =…

薄暮(ナイター)陸上記録会

でかけようとすると、すごい雨が降ってきた。これで本当に行われるのだろうか。とりあえず、行ってみる。雨でモチベーションが下がってしまった。 火曜日に膝に違和感が出て、水曜日にインターバル走で最後の仕上げをするという予定をキャンセルしてしまった…

フェルマーの大定理とオイラー

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=180 この問題は、ちょっと計算すればフェルマーの大定理が使えることがわかって(あまり本質的な意味はないと思うが)、後は雑に計算しても答えが出る。 フェルマーの大定理 n …

Project Euler 213

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=213 これ、ずっと分からなかったんだけど、シャワー浴びてて気がついた。一匹ずつ追加していけばよかったんだ。これで非常に簡単になる。別に半分に分ける必要も無かった。

Project Euler 253(2)

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=253 なんとか答えが出た。結局、最初に考えた方針でやった。 いつものパターンで、状態とそこに至る経路数(と最大のセグメント数)を数えていけばいい。しかし、完全な状態を…

Project Euler 254(2)

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=254 最後、簡単だった。 最初はfの引数を1つずつ大きくしていってgを決めていったが、例えば342は234でいいので、ソートした配列を使うようにした。これで60くらいまではいける…

Project Euler 254

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=254 問題の意味はすぐにわかるが、今のところ手がかりがない。20までなら素直に書けばよい。 from itertools import imap, count from math import factorialdef gen_digit(n):…

5km走

総合運動公園のAコース(1.44km)×3+Bコース(0.62km)だから、正確には4.94km、のはず。 dist time /km 1.44 6:13.87 4:19.63 1.44 6:19.13 4:23.28 1.44 6:09.79 4:16.80 0.62 2:23.50 3:51.45 - 4.94 21:06.29 4:16.33最後以外ちょっと楽目に走ったけど…

第14回愛知県サッカー選手権大会決勝

今日もウェーブスタジアムに行ってきた。 天皇杯の愛知県予選の決勝も兼ねているということもあって、NHKが生中継する。ウォーキングコースをクレーンカメラが塞いでおり、よけて芝生を走っている人を見た。 入場は無料。観客は738人。以前JFLの試合を見たと…

Project Euler 253

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=253 最初、どういう問題なのかさっぱりわからなかった。何度も読んでいるうちに意味が分かってきた。 1〜10のカードがでたらめに手元に積んであって、例えば、3,5,9,2,1,4,8,6,…

Project Euler 167

プロジェクトオイラー http://projecteuler.net/ 残りは11問。まずまず順調に解けている。全て一から書いているが、だいたいは、前と同じように書いたつもりなのに正しい答えが出た、というパターン。何が悪かったのか分からない。それから、前は苦労して書…

清涼の夕べを楽しく走ろう!最終日

先週と同じ時間に行ったはずなのに、かなり暗かった。雲が出ていたとはいえ。もう夏も終わりだ。 ストレッチして、ポケットを探ると、メモがない。インターバル走の距離とタイムを書いてきたのに。だから単純なインターバル走のほうがいいんだ。 どうしよう…

フィットネスサーキット

久しぶりに総合運動公園のAコースを走る前に、はじめてフィットネスサーキットなるものをやってみた。しかし、上半身系のものがほとんど初級者レベル。 昔から上半身鍛えるの苦手なのよね。鍛えたほうが楽に走れるのはわかってるんだけど。 その後Aコースを7…

時間インターバル走

昨日来た「ランナーズ10月号」に載っていた、時間を計るだけのインターバル走を実践してみた。 最初はハーフのペースで4分、1分半レストジョグ、などとして、段々時間を短くペースを速くしていく。これだと距離がわからなくて済むからいいらしい。といっても…

Project Euler 252

プロジェクトオイラー http://projecteuler.net/ Q252. 与えられた疑似乱数で500点を発生させる。この500点のうち何点かで構成されて、かつ構成点以外を含まない凸多角形のうち最も大きい面積を求めよ。 最初、どうしていいか分からなかったが、地道にやって…

Project Euler 251

プロジェクトオイラー http://projecteuler.net/ Q251. (a + b√c)1/3 + (a - b√c)1/3 = 1 とa + b + c ≤ 110,000,000を満たす正の整数の(a, b, c)の組の個数。 定数が最近変わったみたい。 上の式は簡単になるが、そこからが大変。

Project Euler 250

プロジェクトオイラー http://projecteuler.net/ Q250. {11, 22, 33, ..., 250250250250}の空でない部分集合で、その要素が250で割り切れるものの個数を、下16桁で。 これも前問とほとんど同じ。 nnの250の剰余は、(n%250)kが250で割って1余る最小のkをあら…

Project Euler 249

プロジェクトオイラー http://projecteuler.net/ Q249. 5000より小さい素数の集合をSとする。その要素の和が素数となるSの部分集合の個数を、下16桁で答えよ。 この問題は易しい。 部分集合の要素の和→個数というマップを作る。和のうち素数のものの個数を足…

Project Euler 248

プロジェクトオイラー http://projecteuler.net/ Q248. φ(n) = 13!となる小さいほうから15万番目のn。 n = peなら、φ(n) = (p - 1)pe-1で、かつ乗法的である((x, y) = 1なら、φ(xy) = φ(x)φ(y))。 まず、1を引くと13!の約数になる素数を全て求める。その組…

Project Euler 247

プロジェクトオイラー http://projecteuler.net/ Q247. y = 1 / xとx = 1とy = 0に囲まれた領域に、なるべく大きな正方形を書く。一つ書いたら、残りの領域にまたなるべく大きな正方形を書く。正方形には大きい順に1から番号を振る。また、その正方形の左と…

Project Euler 246

プロジェクトオイラー http://projecteuler.net/ Q246. 与えられた楕円の外の格子点で、そこから楕円に向かって引いた2本の接線が成す角度が45度より大きいものはいくつあるか。 これも前問と並んで最難問題となっているが、実際には易しい。1点ずつ調べても…

インターバル走

ウェーブスタジアムは清涼の夕べという感じではなかった。 インターバル走。 400(102s)×10 2000 695.44 400 101.64 200 68.62 400 100.27 200 70.32 400 99.63 200 74.96 400 99.39 200 78.23 400 97.96 200 80.80 400 99.02 200 84.47 400 100.11 200 85.37…

Project Euler 245

プロジェクトオイラー http://projecteuler.net/ Q245. (n - φ(n)) / (n - 1)を約分して分子が1になる、合成数の1 < n ≤ 2×1011の総和を求めよ。 最難問題だそうだが、さほどてこずらなかった。 まず、nを素因数分解してべき乗の項があるとダメなのはすぐに…