今年の目標を振り返る

人生ゲーム 2014 - あなたは嘘つきですかと聞かれたら「YES」と答えるブログ
採点します。
algorithmのレート:6/6
思ったより上がった。
marathonの参加回数:1/6
機械学習系にも出ないと回数が増えないなー。
marathonのレート:3/6
3回しか出てないにしては頑張ってる。
CodeForcesのレート:5/5
高すぎるかと思ったら達成できた。
ICPC成績:0/2
来年こそは!
ICPC練習:1/2
オンサイト進出回数:5/5
日本のオンサイト数えていいんだっけ。まあいいや。
個人の最高順位:5/5
UTPC3位で既に達成していたんですが、優勝までできるとは。
writer定期:3/5
writerその他:1/3
意識:0/5
作品:5/10
あんまり作らなかったなー。
スキル:5/10
採点しにくい。
大学:0/10
大学生の鑑(あんまり覚えてない)
雨でもないのに外出しなかった日数:0/4
外出しなかった日には雨が降るべき。
添い寝:0/0
max(0,score)
その他:6/16
適当。

コンテスト系:30/45
その他プログラミング:10/25
大学:0/10
その他:6/20

合計:46/100
評価:D

欠点、留年不可避。
もう一回2014年やります。

CodeFestival 2014 上海ツアー 参加記 〜コンテスト編〜

結果としては、
1位:snuke (GJ以外の8完)
2位:omeometo (HIJ以外の7完)
3位:アジアの人 (GHJ以外の7完)
という感じで、優勝できました。やったー。
7完のままでも時間の差で勝っていたけど、8問目を残り30秒くらいで通して順位表を面白く出来て良かった。
AOJ-ICPCを埋めまくっていたおかげか実装力が上がっていたらしく、前半6問を2時間弱で終わらせて後半の問題をやる時間ができたのが良かったっぽい。
AOJ-ICPCは神。あと、準急を止めた税金さんも神。



・開始前の準備としては、順位表のページをchrome拡張を使って定期reloadするようにしておいた。
・とりあえずA問題から見る。
・なんかgrayコードっぽい。
・適当に実装する。
・WAたくさん
・自明なミスがたくさんあった。つらい。
・とりあえず順位表を見る
・tozan、omeさん、ロジマシさんしかまだ通してなかった。
・最初の数問でtozangezanとかに勝てないのはわかっていた。
・Bを読む。
・慎重を要する感じで怖かったので慎重にやる。
・こういう感じの慎重系はAOJ-ICPCに割と出てきたのでちょっと慣れた。
・部分ごとにテストして1発AC。バグらなくて良かった。
・Cを読む。
・Regular Polygonは多分正多角形だと思いつつもweblioで一応確認した。
・正方形しかないよね、コーナーケースを考えながら適当に実装してAC
・この時点でomeさんの次の2位(AB早かったtozanはCを飛ばしていたっぽい)
・Dを読む。
・解法はすぐ見えたけど、明らかに実装重いし、バグ出したら一気にペース乱れる問題に見えたので飛ばす。
・「Yakiniku」という文字列につられてFを読む。
・問題設定は簡単そう。
・とりあえず数式を立ててみる。
・あー、ax+bをたくさんの区間に対して求める感じかー
・たこ焼きオイシクナール型segtreeを書く。
・ちょっとデバッグしてしまったけど1発AC
・この時点では多分1位だった。
・とりあえずDに戻ってもりもり実装
・流量を1箇所間違えたり、あきれるようなミスとかあった気がするけど、泥沼デバッグとかはせずに一発AC
・調子がいいとはあんまり言えないけど、ハマったりはしてないからまあまあいいんでは。
・この時点でomeさんに20秒差を付けられて2位
・まぁでもこの段階での微妙な順位はどうでも良いので気にせず次。
・omeさんが解いてるEやるか。
・ゲームの戦略系のDPだ。
・こういうのはメモ化で実装すると楽なやつだ。
・状態の持ち方工夫しないとループ起きそうだなぁ。
・「何ステージ目か」も持てば1ステージ目以外はループしなさそう。
・WA!?
・精度が足りてないのかなぁと思ったがそんなことはさすがになさそう
・問題文を眺め直す「if the difficulty of that stage was 2 or 3,」あっ
・AC
・この時点で1位に返り咲く。
・omeさんはDを飛ばしているっぽくて、引退勢には体力的に厳しそうなのかなと思った。
・なんかここまで、「書き終えてサンプルすんなり通って出したらあっさりAC」みたいなACがCくらいしかなかったけど、どハマりはなかった。
・優勝ラインは700~800っぽい
・少なくともあと1問は解かないと。
・順位表を眺めている時になんかIを解いてる人が結構いたことを知っていたのでIを読む。
・なんかLapin Noirっぽいけど、終末状態は複数あるからちょっと違うか(これは「Mr.X disappearsした後はもうMr.Xは二度と現れない」という誤読によるものだった・・・)
・誤読したまま解く。
・WA!?
・あっ、もしかしてこれ「Mr.X disappearsはそのターンだけ」なのでは
・AC。修正箇所がほんの少しで良かった。
・700点の時点で1位だったので、1・2位くらいは取れそうかなーと思っていた。
・あと1完はしとくに越したことはなさそう
・omeさんがGを通していたので読む
・なんかよくわからないけどよくわからなさそうだった。
・うーん、トイレに行ったりしてる間にも何もわからなかった。
・準急が通してない時点でJは捨てた方が良さそう。
・Hを読む。
・結構ときやすそうな問題だった。
・条件を整理していくと流したくなった。
・結構辺の数が多い気がしたのでグラフを小さくする方法を考えていたけど小さくなりそうにない。
・残り時間も少なくなってきていたので、試しに書いてみることにした。
・書き上げた時点で残り1分にだったのでsubmitしてみたけどサンプルすらあっていなかった。
・絶望しながらコードを見たら明らかに変なところを見つけて書き換えてまたsubmitしたらACした。
・8完、普通に嬉しい
・辺の数については、フローの計算量について疎かっただけっぽくて、減らさなくても普通に間に合った。
・凍結こわい・・・
・omeさんがIを出していて、これがACなら時間差で負けていた。
・こういうコンテストでの優勝は初めてだったのでめっちゃ嬉しい。



各問題の感想

A「Lock」:サンプル入出力を5個書いてみて欲しかったw
B「n-th Points」:面倒なだけだけど、結構ユニークな問題で僕は少しだけ好き。
C「Regular Polygon」:数学系の用語を英語で何て言うかって結構知らないよね。
D「Maze」:復元つらい(◞‸◟)けど、AOJ-ICPCでの圧倒的成長によりあっさり倒せた✌︎
E「Game」:「if the difficulty of that stage was 2 or 3,」はなんか現実に合わせすぎて面倒くさくなるだけだったんじゃないかなぁ。サンプルで落とされないのはつらい。それがなければ結構面白い。
F「Yakiniku」:これは良問。さすが焼肉。
G「Ammunition Dumps」:問題文が分かりにくかったのは残念だけど、問題としては面白かった。意外と気付きにくいもんだなぁ。
H「Dungeon」:なんというか目新しさはない印象だけど、問題としてはなかなか面白く出来ていて好き。
I「Obstruction」:Lapin Noirを知っていると、Lapin Noirに対して「こういう解き方もアリだよね」って言っている風にも感じた。解法は結構違う。Lapin Noir的な解法でも解けそうだけど結構面倒そう。(そもそも誤読してたしね)
J「XORAND」:読んでません。(XOR RANDだと思ってたくらい)ホテルでantaさんにwavelet系のデータ構造に教えていただいた。分かりやすかった。wavelet面白い。


コンテストの運営様お疲れ様でした。
特に英語の問題文とか大変だったのではないでしょうか。
問題面白かったです^^(特に後半)
サンプルはちょっと弱かった気がするけど、リジャッジとか起こってなかったのはプロ。

CodeFestival 2014 上海ツアー 参加記 〜ボードゲーム編〜

上海で遊んだボードゲームについて書きます

5本のきゅうり

ルールと写真
amazonのサジェストに出てきて、思わず名前買いした。

基本的にカードの引き運がかなり強いんだけど、そんなに単純なゲームではない。
弱い手札が来ても、周りの様子とかを伺いながら「どのカードを最後に残せるのか」を見極めれば、たとえ負けても損害を小さくできる。
良いゲームだった。

競プロ勢の第一声「あれっ、きゅうりってこんな形だっけ」
きゅうりが三角形だと思っているのは競プロ勢だけですw

ラブレター

ルールと写真
TCOでロシア勢(Petr,tourist,Egorあたりの人々)がやってたので買ってみた。

やってみればすぐに分かるんだけど、クソゲーです。
でもそれでいてたまにボードゲームらしい局面も生まれたりする。
(例えば頭を使っていないと、将軍で兵士を渡してしまうという愚行をしてしまったりする)

最初の印象は、「なんだクソゲー、本当に面白いのか・・・?」って感じだったんだけど、やっていくうちにこのゲームの面白さがだんだんわかってくる。
理不尽を楽しむゲームです。
「王」という拡張カードが入っているんだけど、このカードは「引いた瞬間に脱落する」という超理不尽なカード。
これを入れると理不尽さがグッと増して最高。
yosupoが1ターン目に引きまくってて面白かった。

深夜にやるとかなり盛り上がる。
テンポもいいし、良いパーティーゲームでした。

ムガル

ルールと写真
なんか見つけて面白そうだったので買ってみた。

すっごい単純なオークションなのに、かなり奥深い。
「株券」という設定とルールがうまく噛み合っていていいですね。

本当に欲しいものを取るために、要らない株券が出た時にお金を稼ごうとするんだけど、そこでいくらくらいお金を増やせるかの駆け引きが難しい。
場に出てるお金が多くても、その回の利益は「取ったお金」ではなくて「取ったお金ー出したお金」なので、取れるお金が少なくても早めに撤退した方が良いことが多い。
また、一騎打ちになったときにうまくいけば持ち金を2倍くらいにできることもあるので、いつ撤退をするか、どこまで粘れるかをしっかり考えないといけない。
基本的に、同じ種類の株券を集めると周りの状況に左右されにくくなるし、一回の売却権でたくさん点数がもらえるし、強いと思う。

いやー、面白かった。

競プロ勢の第一声「マラソンっぽい」
実際chokudaiさんが強かったし、マラソン力大事っぽい。

モダンアート

ルールと写真
そこそこ有名らしい。箱が案外デカかった。

何回かやると感覚がつかめてくる。
これ、損得勘定がめちゃくちゃ難しい。
例えば、「4万くらいになりそうな絵を競りに出して、一声で3万の値で回ってきたとき」。
自分で3万千で買うと9千くらいの利益が出る。しかし(基本的に)買ってはいけない
なぜかというと、買ってもらったら3万円の利益が出るから。これ結構最初気づかなくて損をする。
こんな感じでオークショナーはかなり有利なんだよね。
だけど、「オークショナーが得するから買わない」ということをするのもなかなかできない。
理由は、他の誰かが買うよりは自分で買った方が得だから。
あとは、場の流れを読んで値段を正しく推測するのも大事っぽい。特に買った絵が紙くずになると悲惨。

損得勘定について考えさせられる良ゲーだと思う。
すごく面白い。

CodeFestival 2014 上海ツアー 参加記 〜画像編〜

f:id:snuke:20141220144031j:plain
上海についてから初めて見た上海の風景
普通
f:id:snuke:20141220165158j:plain
f:id:snuke:20141220171736j:plain
1日目の観光
f:id:snuke:20141220182557j:plain
クルーズの円卓で回すために撮ったyosupo
f:id:snuke:20141221212829j:plain
f:id:snuke:20141221213026j:plain
デパートにて。日本感漂う。
f:id:snuke:20141221213527j:plain
背の低いファミマ
f:id:snuke:20141222162332j:plain
小籠包作り
f:id:snuke:20141223135516j:plain
空港でぼっち飯してるyosupo