予選Aに参加しました。自分は47位で、なんとか予選突破圏内でした(社会人なので資格がありませんが)。自分が経験する初めてのタイプのコンテストで新鮮だったので、簡単にメモしておきます。問題AからDからなる50文字の文字列を作って高得点を目指す戦略ランダムな長さ50の文字列をたくさん作って投げる点数の高かった上位n件について、長さ8の部分文字列を抽出して点数を調べる長さ8の文字列のうち点数の高い上位m件から、ランダムに6つ選び、ランダムな2文字をランダムに挿入して50文字の文字列を生成。文字列と点数の組を辞書として持ち、適宜pickleで保存。Contestに参加。結果はooo--で15位でした。負の数を出力しないよう注意するくらい。ビットマニアまず、7つのレーンのそれぞれについて、ノートの最大連続数を数える。最大連続数の小さいレーンから順番に、そのレーンを弾き切ることのできる指のうち、もっとも縦連耐性の小さい指を順に割り当てていく。使える指が先になくなったらノーミスクリアは不可。n)と、ペアの位置とを互いに変換する関数を作って真っ当に解いた。いい方法があるような気もしたけど分からなかった。お気に入りの数2有向グラフの各ノードを最低一回通って元のノードに帰ってくる経路のうち、最短の経路を求める問題になりそうだと思ったけど解き方分からず。簡単な規則があるのかとも思ったけど見つけられず。Codeforces。