Codeforces 97

普通に大敗。最初から勝ち目のない戦いという感じではあるけれども。

A

整数配列が与えられるので、任意の要素の値を別の値に変更してソートするという操作を一度だけ行ったとき、各位置にくる値の最小値を答えよ、という問題。


とにかく一番大きい値を出来るだけ小さい値に変更してソートするだけ。

B

二次元平面状の点が8つ与えられるので、正方形の辺上、長方形の辺上にくるように、4点ずつに分けよ、という問題。


だと思っていたら、頂点になるように、なので、8!通りのパターンをテストすれば良さそう...。

C

二進数が一部伏せられて与えられるので、出来るだけ大きい値を残したいプレイヤーとその逆のプレイヤーが交互に一桁ずつ除去していくという操作を行う。最後に残る二桁として考えられるものをすべて答えよ、という問題。


結局左側から1を除去するか0を除去するかの違いなので、1が除去される数が明らかに多ければ0が残るし、その逆もしかり。最終的に0と1が同じ数残るときだけ、伏せられているものが1ばかり左にいるか0ばかり左にいるかで二パターン試せば良い。

D

0と1からなる二次元配列上に、1のみからなるサイクルで、中に1を含まず、また、1が団子にならないもののうち、最長のものの長さを答えよ、という問題。


1に注目するのではなくて、0に注目するらしい。1が団子にならないということは必ず中に0がいるはずで、0を開始点にして、それを包む1が求めるべきサイクルになる可能性のあるもの、だそうです。

E

見てない。