2018-07

AtCoder

AtCoder BC103 D: Islands War

問題 解法 最初に(ai, bi)の組み合わせについて、a→bの順番でソートします。 そして、ソート後の組み合わせについて、昇順に橋を落とす範囲を求めていきます。 その場合、i番目とi+1番目について...
AtCoder

AtCoder BC103 C: Modulo Summation

問題 解法 m mod ai が最大になるのは、mがaiの倍数-1の時で、余りはai-1になる。 よって、mがa1,a2,,,anの最小公倍数-1の時にf(m)は最大になる。 最大値を求めるだけなら最...
AtCoder

AtCoder BC103 B: String Rotation

問題 解法 文字列の長さが最大100と短いため、全パターンを確かめて比較するだけでOK 実装
AtCoder

AtCoder GC020 A: Digit Sum 2

問題 解法 各自がとるべき戦略を考えるにあたり、まずはどのような状態で勝敗が確定するかを考えます。 勝敗が確定するのは、以下のように片方が端っこに追いやられた状態で、次のターンがまわってくる場合です。 ...
AtCoder

AtCoder BC098 C: Attention

問題 解法 ある人をリーダーに選んだ場合、 西から東に向きを変える人の数 = 選んだ人より西の人の内、西を向いている人の数 東から西に向きを変える人の数 = 選んだ人より東の人の内、東を向いている人の数 ...
AtCoder

AtCoder BC098 B: Cut and Count

問題 解法 文字列のサイズが最大でも100なので、全ての切断箇所のパターンで「どちらにも含まれる文字」の種類を数え上げれば解けます。 Rubyの場合、配列の「&」をとると共通部分が求められるので、実装は以下...
タイトルとURLをコピーしました