unsolved problems

とりあえず 200 まで。 161 Triominoes: たぶん方針が見えてるのでやればできると思っている。 167 Investigating Ulam sequences: Google で検索かけたところいくつかの性質が知られているらしいのでそれを組み合わせればできそう。本当にできるかどうかは…

Codeforces 26

参加しました。今回は新しいルールということで,lock と hack という仕組みが導入されました。システムとしては topcoder の SRM に近くなっているようです。 A. Almost prime numbers 相異なる素因数をちょうど二つもつ正の整数を almost prime number と…

CodeChef August 2010 Challenge

なんとなく。相変わらず難しい。Stepping Numbers と Swarm of Polygons の方針がだいたいわかった気がするのだけどいろいろと実装が大変というか面倒だなあとか。Stepping Numbers は上限が 2^64 なので unsigned long long 相当の値が扱える言語でないと厳…

abstract に含まれる単語の比較をしてみた

雑誌ごとの傾向の比較をするための客観的な指標はないかなと思って,試しに abstract に現れる単語を比較してみました。知識があればもっと数学的に裏打ちされた何かを使うところなのでしょうが,よくわからないので適当に当たりをつけて見比べるだけ。Web o…

論理系の雑誌まとめ

探してみました。ついでに最近の論文のタイトルを眺めて特徴を比較してみました。でもあんまり読めてる自信ないので鵜呑みにしないでください。 Algebra and Logic http://www.springer.com/mathematics/algebra/journal/10469 http://math.nsc.ru/~alglog/…

逆行列の計算

必要になって何となく OCaml で書いて何となく晒す。なんとなく面倒臭そうなイメージを持ってたんですが,実際に書いてみたらそうでもありませんでした。破壊的代入の塊であるという点では関数型らしくありませんが,配列の破壊的操作が Array.iteri で思い…

Project Euler 146

ずいぶん長い間解けないでいた問題をとりあえず解きました。forum を読んだ感じだと,これは素数判定をする問題だったようですね。素数判定をやらない解き方を紹介してみます。遅いです。あと細かい調整や最適化がいくつかありますけどたいして面白くないの…

codeforces 25

昨日の Codeforces Beta #25 にまた参加しました。Div 2 only に毎回参加できる程度の能力。反省会。 A. IQ test 三つ以上の自然数が与えられます。一つだけ奇偶が異なるものがあります。それが何番目にあるか答えましょう。一部で問題文が難しいとの評判が…

codeforces 24

Codeforces Beta #24 参加しました。久しぶりに反省会。 A. Ring road リング状の無向グラフに向きをつけました。ばらばらに向きをつけたので一周できません。一周したくなったのでいくつかの辺の向きを変えます。各辺の向きを変えるのに必要なコストが与え…

多段階計算における継続

最近,古典論理に対応する計算体系について勉強してます。古典論理だと Peirce's law と call/cc が対応するとかいう話がわりと有名で,基本的にはコントロールオペレータを含む体系になります。それで,そこにさらに様相が入った場合にはどんなことになるの…

F# での出力

Codeforces 22 Problem C を F# で書いたら TLE 食らいまくったので対処法メモ。この問題は出力が最大で 10^5 行 (800KB) くらいになるので,出力のところで気をつけないと時間が足りない模様。最初は一行ごとに printfn してたのですが,それだと苦しいよう…

yield と Common Lisp の collect clause

なんか似てるなって思ったことを。例として素数の列挙を考えます。F# だと,こんな風に書けます。 let primes n = seq { for x = 2 to n do if isprime x then yield x } 要するに,2 から順番に見ていって,素数だったときだけ yield するわけです。Python …

一行読み込んで空白で切ったリストを作る

codeforces の問題を解きながらコード書く練習中。使えそうなパターンを蓄積してみたい。既出とか気にしませんよ。 let readWords fn = stdin.ReadLine().Split([|' '|]) |> Array.toList |> List.map fn GCJ で拾ったコードの中にあったものを少し改造した…

F# 始めました

codeforces で F# が使えるようになったということもあり,試しに使ってみることにしました。ということを書こうとしたら前回のエントリとかぶってましたが気付かなかったことにします。xyzzy で F# 用のモードがないかなと思ったのですが,それらしいのが見…

F# を触ってみた

F#

codeforces でも対応したらしいので Java から F# へ移行をもくろみつつ,とりあえず実行できる環境を整えました。Visual Studio とかいりませんよ。処理系だけください。とか思ったんだけどどうしたらいいのかいまいちわからなかったりして手間取りました。…

マクロの罠

tex

文書を書いていると,ときどきメタ変数を何にするかで迷うことがあります。そんなときは,後で変えたくなったときのために \newcommand{\FRM}{\mathcal{F}} とか書いておいて,本文中では $\FRM$ と書くわけです。ところがそうすると,本文中で「V を F-valu…

TFAE

"the following are equivalent" であって "the followings are equivalent" ではないようですが,すぐ忘れるので困っています。the following は単複同形。単複同形。

Problem 216 解いた

一年半くらい分からないでいた Problem 216 が解けました。わあい。他の問題の forum でネタバレしただけですけど。

typesetting set comprehension

tex

前から,きっとやり方があるに違いないんだけどどうやればいいのかよく分からないと思っていたこと。TeX でみたいな表記の真ん中の縦棒を,手で指定しなくてもいい感じの長さにしてほしい。で,たまたま拾いました。 \documentclass{article} \def\set#1#2{\…

GCJ Qualification Round

とりあえず参加して通りました報告。どの問題も,素朴に書くとたぶん large が終わらない程度の計算量にしてあります。だから少しは賢く計算する必要がありますが,どれもそんなに難しくはなかったと思います。C はちょっとややこしいか。目を引く点として,…

composition calculus

あなごるに出てた composition calculus が面白そうで,真面目にインタプリタを書いてみたくなったので OCaml で実装してみた。所要時間は Stream のインタフェースを思い出すところから始めて全部で一時間くらい。 type token = char type expr = Atom of t…

ジグソーパズルを線形時間で解く

むりやり理想化を重ねて形式化したら,ピース数に対して線形時間でできることになりました。 すべてのピースに ID を振る 各ピース p の各辺について,辺の形状を符号化し,符号からピース p へのマッピングを作成する。(この前処理により,辺の形状をキーと…

本を読もうと思った

前から自覚はありますが,僕は全然本を読まない人です。どのくらい読まないか,という数字を具体的に書いたところで同程度に読まない人はきっとそこら中にいて面白くないので書かないでおきますが。*1専門書なんかもほとんど読んでいないので,専門に近い数…

MathMania 参加

CodeFest というイベントの一環として開催された MathMania というコンテストに参加しました。195 点満点中 145 点で 6 位になりました。思いの外上位に入れたし,問題を見た瞬間は半分も解けないかなと思っていたのが結局時間内に一応全問正解かそれに近い…

PPL 2010

私的まとめ。 直観主義様相論理っぽい構造が最近の流行になっていたりいなかったりするらしい アスペクト思考って,プログラムにテキスト上の配置とは別の位相を入れることなんじゃないかな 線形論理の結合子を日常会話でも使うようにするといいと思うよ 後…

矛盾からは何でも出てくるの法則の名前

なんかこんなやつ。どうもこいつにはいろんな名前があるみたいで。思い出そうとしてパッと出てくるのは ex falso quodlibet ぐらいなんですけど,他にも ex contradictione quodlibet とか reductio ad absurdum とかいろいろな名前があるみたいです。で,最…

MathematiKa 2K10

参加しました。9 問中 6 問解いて順位が 15/173 という,いいのかそうでもないのか分からない結果。すぐ解ける問題とさっぱり解けない問題に,わりときれいに分かれました。問題一覧: http://felicity.iiit.ac.in/~math/MyWork/Handle.py/Handle?RequestedPa…

CodeCraft

CodeCraft に少しだけ参加しました。途中で面倒になってやました。問題自体はそんなに難しすぎず,面白そうだったのですが,言語の壁は高い。

invmod だか modinv だか

さっき変に手間取ったので書いてみる。a, b が与えられたとき,ax + by = 1 を満たす x, y の組を求める問題。存在しない場合はとりあえず考えない。b = 1 のときは x = 0, y = 1 でよい。a = 1 でも同様。それ以外の場合を考える。a > b と仮定して,a = qb…

'10 センター試験・国語

国語もやりました。42+42+27+32=143。昔に比べると現代文は変わらないか少しよくなったぐらいですが,古典がだいぶ点数下がってます。古文はそもそも意味がわからなかったし,漢文は一応読めてる割に間違えすぎでした。それから全体的に「丁寧に選択肢を潰さ…