AtCoder ABC 046 B – AtCoDeerくんとボール色塗り Python解説
AtCoDeerくんとボール色塗り
シカのAtCoDeerくんは一列に並んだ N個のボールをそれぞれ K色のペンキの色のうちのどれかで塗ろうとしています。
AtCoder株式会社 AtCoder Beginner Contest 046
見栄えが悪くならないように、隣り合ったボールは別の色で塗ることにします。ボールの塗り方としてあり得るものの個数を求めてください。
数学のテストで出てくるような問題ですね。迷ったら状況を紙に書いて整理するといいですよ。
では、問題を解きましょう。1つ目のボールはK色すべてのペンキを使えるのでK通り。2つ目以降はK-1通り×N-1(残りのボールの個数)になるので、これを掛け合わせます。
n, k = map(int, input().split())
print(k * (k - 1) ** (n - 1))