SRM412 Div2

今回の問題は仕様が大きくて英語になれていない人が不利な問題だった印象。前回僕が牛久大仏からの帰りの車で参戦した回に比べるとアルゴリズム的にはさほど難しくないのではないか。境界を含むのか含まないのかとかに注意しないとテストケースで落とされそうだとも思った。(そういえばあのときの解きかけの問題にリベンジをしようと思ってまだやってないや)

今はChallenge Phaseなのでそういう境界条件をつついてやれば落としやすいのだとは思うけど、もう疲れたからいいや。


1000点問題。ギターなどのタブ譜?が与えられるので別の楽器のタブ譜に変換しなさいという問題。途中でタイムアップしたので走らせてみた結果6件中3件のテストに通った。ちょこっと直して4つになった。

Test Case #0...PASSED
Test Case #1...PASSED
Test Case #2...PASSED
Test Case #3...FAILED
	Expected: { "xxx-27-xx-049-999x--7777-777x-","xxx----xx-------5x---------Cx-","xxx3---xx0-----99x--------CCx-", }
	Received: { "xxx-27-xx-049-9400--7777-7777-","xxx----xx---------------------","xxx3---xx0-------0------------", }
Test Case #4...PASSED
Test Case #5...FAILED
	Expected: { "222222222222","------------","555555555555", }
	Received: { "000000000000","------------","------------", }

和音が引かれたときにはどうしなさい、というルールのうち「同じ弦を違う音で同時に引くのはダメです」というルールをまだ実装していない。


チャレンジフェーズのうちにとりあえずテストは通った。後でプラクティスモードでサブミットしよう。

        • -

チャレンジフェーズが終わった。暫定1位。システムテストで落とされなければ次からDiv1に昇格かなぁ。

そいじゃ晩ご飯を食べて帰ろうっと。帰る頃にはレーティング更新されてるだろー。

        • -

レーティングは130くらい上がって、無事Blue Coderになりました。

        • -

1000点問題は「和音の途中の音で『弾くことができない』(すべての弦にxをつける)が現れたときには和音の他の音を試さないためにbreakする」の1行を忘れていたせいでシステムテストには落ちましたとさ。
ここから先Div1ではこういうケアレスミスもしないことが重要なんだろうな。難しいな。