fc2ブログ

Entries

TopCoderニコ生オープン 第2回 (参加記録) (この記事を編集する[管理者用])

2010年05月25日22時20分から.
(TopCoder Open 2010 Algorithm Qual. 3は2010年05月25月10時02分から)

TopCoderニコ生オープンとは

red.cliff.jpの診断人さん主催の大会です.
今回はTopCoder Open 2010 Algorithm Qual. 3に出れない人たちが,終了後に皆でQual. 3を本番形式で解こうという大会です.
TopCoderニコ生オープンのコミュニティはco329335
自分も放送しながら参加しました.自分の放送は→.[ 1枠目 ] [ 2枠目 ] [ 3枠目 ]

Easy

n*mのグリッドの数字を書く.1行目と1列目の数字は与えられている.
小さい2*2のグリッドを見たとき,左上の数字は,その他の数字の和になっている.
右下の数字を求める問題.
一意に定まらないなら,それを指摘する.

どうみても一意に定まります.罠乙.
左上の方から順番に求めていくだけ.書いた.提出.

Medium

6本の弦のあるギターがある.
それぞれの弦を抑えずにそのまま引くと鳴る音が問題文中で与えられている.
実際に押さえた場所が与えられて,6本の弦に対して,それぞれ,何も押さない時と比べて,i_k×半音だけ高い音が出る.
鳴らさない弦もあるかもしれない.
MajorとMinorしか考えないとして,コードを求める問題.
コードは,3つの音色からなる集合.

CとかD#とかそういうのと整数を対応させるライブラリ前書いたよな….
あった.
適当に実装.
和音を含んでいるかどうか24通り調べて,一意に定まるか調べる.
あれ,ニコ生配信止まってないか?
止まってる.
リロード.
配信開始,ぽちっとな.
何も反応がない….
もう1回リロード,ぽちっとな,ブラウザ強制終了…,ぇ.
取り敢えず提出.
なんか,どうしようもないので,枠閉じて,次枠取ろう.
次枠開始してからでHard開こう.
…あれ,配信開始できないから,配信終了もできない…,なんという罠.
30分経って自然消滅するのを待つ.

Hard

1000*1000以下のガラスがある.
ダイヤモンドのカッターの初期位置と,それをどのように動かしたか,UDLRの文字列で与えられるので,ガラスが何個の破片に別れたかを求める問題.

ニコ生,1100人待ち…だと!?
まー,のんびり待ちましょう…,順番きた.
配信画面なかなかでないなー,なんか重いなー,と思ってたら,1分ぐらいしてサーバがエラーを返しましたとか言ってきた.
リロード!
あれ,なんか,順番待ち中とか言われて,配信画面に入れないぞ.
どうなってるの?
5分ぐらいたってから入れた.
さっきは10秒以上遅延してたけど,今度は遅延は少ない.
てか,もう30分も時間残ってないじゃないか,Hard開こう.
草刈るのにダイヤって何だ…,って草じゃねぇw (お約束だったみたい)
で,問題は,座標を拡大して,塗りつぶすだけ.
縦横2倍したら十分だけど,考えにくいので縦横3倍する.時間的には多分大丈夫だろう.
メモリは…? 大丈夫!
でも,これ,塗りつぶすの再帰するとスタック足りないよね.
まぁ,頑張って書くだけだ.
動かん….
0からHまであるので,H+1個取りうる値があるよね…,1足さなきゃ.
まだまだ動かん….
UとD逆だ….
ほか変数間違えてたりいろいろ.
通った.サブミット.
チャレンジに備えて,枠を早めに閉じる.
枠取ろうとしたら,まだ放送中になってるよ,早く終わって.

Challenge

枠間に合わなかった….
まぁ,取り敢えず狙いどころは,Hardのスタックオーバーぐらいか?
眺める.うーん,流石に再帰で書いてる人なんていないなぁ….
てか,Mediumって,音の数が3個じゃないと即座に該当なしを返してるな…,え?
いやいや,4つでも,和音含んでることあるだろ…,え??
ちょっとまって,問題文勘違いしてるの自分じゃないの?
問題文読み直す…,え,どっちかわからん.
でも,常識的に考えて,変な音混ざってたら和音って言わないだろ…,たぶん自分が間違ってる.
拗ねた.
拗ね枠始まった.
500落ちるので,同じような点数の人いないだろうし,どうでもいいやという感じでチャレンジ2失敗.

System tests

250と1000は通って,500は落ちる.予想通り.
放送見直してみると,今回の僕はどう見ても焦りすぎ.ニコ生のトラブルが多少有ったのを差し引いても.
定期的に,こういう失敗をしないと,慎重に戻れないので,いい時に痛い目を見て良かったと思う.
忘れたら思い出せ: TopCoderは解ける問題を,慎重に確実に解くだけで,自然に高得点になる.

Mediumの読み間違えは
> The above chord contains three distinct notes: C, E, and G. This chord is called the "C Major" chord.
を見て,C, E, Gを含んでいれば何でもC Majorと捉えてしまった.
もうちょっと常識と照らし合わせて何かおかしいなと疑問に思え,良く考えろ.

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/1264-e5e6bcec
この記事にトラックバックする(FC2ブログユーザー)

Appendix

Recent Articles

ブログ内検索

Ads


(プライバシーポリシー)