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

Project Euler 239

プロジェクトオイラー http://projecteuler.net/ Q239. 1から100までの番号を振ったディスクをランダムに並べる。素数のディスクがちょうど22個本来の位置と違う確率を求めよ。 どうやっても解ける気がする。美しくなくてもいいから、とにかく漸化式に持ち込…

Project Euler 238

プロジェクトオイラー http://projecteuler.net/ Q238. 省略 まず、一回りの数字の列を作る。頭から足していくと、その数をkとすれば、p(k) = 1となる。その次から足していくと、p(k) = 2となる。kが大きいときは、最初に作った数字の列の和で割ったときのあ…

Project Euler 237

プロジェクトオイラー http://projecteuler.net/ Q237. 4×1012の格子の上にルートを作る。そのルートは左上と左下がスタート・ゴールになっている。上下左右に動ける。どのマスも必ず一度だけ通る。ルートはいくつあるか。 左端と中間と右端に分けて、バイナ…

Project Euler 235

プロジェクトオイラー http://projecteuler.net/ Q235. u(k) = (900 - 3k)rkとして、s(n) = u(0) + ... + u(n)としたとき、s(5000) = -600,000,000,000となるrを小数点以下12桁まで求めよ。 ちょっと掲示板を覗いたら、誰もuの計算をしていなくて驚いた。解…

Project Euler 234

プロジェクトオイラー http://projecteuler.net/ Q234. ある4以上の整数nを考える。√n以下の最大の素数をlps(n)、√n以上の最小の素数をups(n)とする。lps(n)かups(n)のどちらか一方がnで割り切れるとき、nをsemidivisibleと呼ぶ。 999966663333を超えないsem…

Project Euler 233

プロジェクトオイラー http://projecteuler.net/ Q233. 原点が中心で半径Nの円周上の格子点の数をf(N)とする。f(N) = 420となるNの総和を求めよ。 大変だった。 Nを素因数分解したとき、4で割って1余る素因数しか出てこないとき、この円周は第1象限に互いに…

Project Euler 232

プロジェクトオイラー http://projecteuler.net/ Q232. プレーヤーが2人いる。まず、プレーヤー1がコインを投げる。そのコインが表だったら、プレーヤー1には1ポイント与えられる。裏なら0ポイントである。次に、プレーヤー2がある正の整数Tを選んで、コイン…

Project Euler 231

プロジェクトオイラー http://projecteuler.net/index.php Q231. 例えば、120を素因数分解して、120 = 2 × 2 × 2 × 3 × 5 -> 2 + 2 + 2 + 3 + 5 = 14とする。20000000C15000000に対して同様の和を求めよ。 n!についてその和を求める。エラトステネスのふるい…

Project Euler 242

プロジェクトオイラー http://projecteuler.net/ Q242. 集合{1,2,...,n}の部分集合を考える。要素数kの部分集合で総和が奇数のものの個数をf(n,k)とする。 n,k,f(n,k)がともに奇数のとき、odd-tripletと呼ぶ。n ≤ 1012でodd-tripletはいくつあるか。 ほぼ、…

ランナーズ9月号

初心者でもできるインターバル、ということで、詳しくは誌面参照だが、変則的なインターバル走をフル4時間用で。今の私にはこれでもきつい。事前に計算して、メモをポケットにしのばせて走る。以下、かっこ内は設定タイム。 2000 691.39 1000 271.22(273) 20…

Project Euler 228

プロジェクトオイラー http://projecteuler.net/ Q228. Snを、頂点が xk = cos(π(2k - 1) / n) yk = sin(π(2k - 1) / n) の正n角形とする。 ミンコフスキー和、S + Tを、それぞれの多角形の内部の点の位置ベクトル同士の和からなる多角形とする。S1864 + S18…

Project Euler 230

プロジェクトオイラー http://projecteuler.net/index.php Q230. 省略 本当はAかBかをすぐにわかるような関数を数学的に作れればいいが、再帰で簡単に関数が作れるのでまあいいことにする。あとも特に難しいところはない。

Project Euler 229

プロジェクトオイラー http://projecteuler.net/ Q229. n = a12 + b12 n = a22 + 2b22 n = a32 + 3b32 n = a42 + 7b42 と表せる20億以下のnの個数。 まず、オイラーが証明したところによると、2つの平方の和で表される整数の条件は、素因数分解して、奇数乗…

Project Euler 227

プロジェクトオイラー http://projecteuler.net/index.php Q227. 100人がテーブルの周りに並ぶ。対面の2人がそれぞれサイコロを一つずつ持つ。それぞれがサイコロを振って、1が出たら左隣、6が出たら右隣にサイコロを渡す。これが同時に行われたときに、同じ…

Project Euler 226

プロジェクトオイラー http://projecteuler.net/ Q226. (s(x)はxから最も近い整数までの距離)が描く曲線の下の部分と、中心(1/4, 1/2)半径1/4の円の重なる面積を求めよ。 交点を求めて、あとは台形法で面積を求めた。 フラクタルについて利用できないかと…

Project Euler 225

プロジェクトオイラー http://projecteuler.net/index.php Q225. Tn = Tn - 1 + Tn - 2 + Tn - 3 T1 = T2 = T3 = 1を満たす数列の全ての項に対して割り切れない自然数がある。このうち124番目のものは? 常に割り切れない場合は、剰余で(1, 1, 1)と並ぶパタ…

Project Euler 223

プロジェクトオイラー http://projecteuler.net/ Q223. 三角形の辺a≤b≤cが、a2 + b2 = c2 + 1を満たすとき、ぎりぎり鋭角三角形と呼ぶ。周が2500万以下のぎりぎり鋭角三角形はいくつあるか。 特に工夫もない。aについてエラトステネスのふるい的に素因数分解…

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

去年からウェーブスタジアム刈谷で期間限定でやってるナイター営業。7/2〜8/27の月・木 19:00〜20:30。なんか知らんがカードを作らされた。スタンプがたまると特典があるのだろうか。 同時に子供の陸上教室もやっていて賑やか。 今日は久しぶりにインターバ…

Project Euler 222

プロジェクトオイラー http://projecteuler.net/index.php Q222. 内径R=50mmのパイプに半径30,31,...,50mmの球を詰め込む。最も短いパイプで済む詰め込み方の場合パイプの長さを整数のμmで表せ。 球の大きさが十分に大きいので、2次元で考えればよい。だから…

Project Euler 221

プロジェクトオイラー http://projecteuler.net/index.php Q221. A = pqr, 1/A = 1/p + 1/q + 1/r となる正の整数Aの15万番目を求めよ。 整理して、 (p + q)(p + r) = p2 + 1 ここで、p > 0, q, r 右辺を素因数分解してもいいが、やはりコストが大きい。Q216…

Project Euler 220

プロジェクトオイラー http://projecteuler.net/index.php Q220. 省略 まず、aを置き換えていったときと、bを置き換えていったときの位置とそこでの向きを計算する。aを置き換えていったものは、2のべきのステップ数進んだときの位置とそこでの向きになる。…

刈谷総合運動公園コースA

4ヶ月ぶりくらいにここに走りに来ただろうか。いつものスタート地点に行こうとしたら、1200/1440という距離表示があることに気がついた。どういうコースなのかわからなかったが、ゆっくり走り出してみた。そういえばストレッチするのを忘れていた。スタジア…

Project Euler 218

プロジェクトオイラー http://projecteuler.net/index.php Q218. 辺の長さが互いに素である整数の直角三角形で、斜辺が平方数の場合、完全直角三角形と呼ぶ。さらに、完全数である6と28の倍数である場合、超完全であるとする。 斜辺の長さが1016の完全直角三…

Project Euler 217

プロジェクトオイラー http://projecteuler.net/index.php Q217. 正の整数が、10進で表して上位半分と下位半分の各桁の和が等しいとき、平衡数と呼ぶ。1047より小さい平衡数はいくつあるか?315の剰余で答えよ。 これはやさしい。 半分の桁の和がある数を取…

Project Euler 216

プロジェクトオイラー http://projecteuler.net/index.php Q216. 2n2-1が素数となるnは、1 < n ≤ 50000000にいくつあるか? またしてもPythonのメモリの使い方に苦しめられた。エラトステネスのふるい的な解法を試したが、多倍長整数がやたらとメモリを食う…

Project Euler 215

プロジェクトオイラー http://projecteuler.net/index.php Q215. 2×1と3×1のレンガを積んで、32×10の壁を作る。ただし、上下で同じ位置にレンガの切れ目があってはならない。レンガの積み方は何通りあるか。 1列の並べ方をグラフの点と考えて、上下に並べら…

Project Euler 214

プロジェクトオイラー http://projecteuler.net/index.php Q214. オイラーのφ関数を次々に適用していくと、 φ(5) = 4, φ(4) = 2, φ(2) = 1 などと最後には1に辿りつく鎖が出来る。この鎖の長さを上の場合4とする。4000万より小さい素数で鎖の長さが25のもの…

Project Euler 212

プロジェクトオイラー http://projecteuler.net/index.php Q212. 与えられた乱数で直方体を50000個生成する。その占める体積を求めよ。 50000個の直方体同士の重なりを計算すると大変なので、よくやるように小さなセルに区切ってそこに含まれる直方体同士で…

Project Euler 211

プロジェクトオイラー http://projecteuler.net/index.php Q211. nの約数の平方の総和をσ(n)と書く。0 < n < 64000000 でσ(n)が平方数になるnの総和を求めよ。 nの素因数分解を n = p1e1...pmem とすると、 σ(n) = (1 + p1 + ... + p1e1)...(1 + pm + pmem) …

Project Euler 209

プロジェクトオイラー http://projecteuler.net/index.php Q209. τ(a, b, c, d, e, f) AND τ(b, c, d, e, f, a XOR (b AND c)) = 0 を常に満たす、真偽表τはいくつあるか 6つの変数をまとめて6ビットの整数として考えると分かりやすくなる。その整数に対して…