hinamelプログラミングメモ

競技プログラミング・ゲーム制作の備忘録

ABC120 C Unification 解説

問題文

atcoder.jp

赤いキューブと青いキューブがいくつか縦に積まれている。赤いキューブと青いキューブが隣り合っているところを取り除くことができ、だるま落としのように取り除かれたぶん上のキューブが下のキューブへと落ちる。この時最大で何回キューブを取り除く操作ができるだろうか。

ACコード

atcoder.jp

解説

赤いキューブと青いキューブが隣り合っているならば弾き飛ばせるということは、逆に言えば赤と青のキューブが不足していれば弾き飛ばせないということである。

したがって、赤いキューブと青いキューブの総数を求め、その最小値×2回操作を行うことができる。

解いた感想

体感難易度:☆1

かんたんな考察をするだけで一瞬にして解ける問題もある。