AtCoder Regular Contest 137 B問題 Count 1's
問題
提出解答
問題の概要
からなる列 がある. この に対して, 次の操作を1回だけ行う.
操作後の列 に対して, とする.
操作後の列 に対して, 可能な は何通りか,
制約
解法1
右半開区間 に対して操作した結果を とする.
ここで, に対して, を にある の数とする. すると, において, の数は であるから,
となる.
このとき, とおくと,
となる.
解法2
ここで, 求めるべきは の取りうる値の種類数であるが, は によらないから, 結局は が何通り取りうるかを考えることになる.
の間において,
より, であることがわかる. この事実と, は整数であるから,
となる整数 が存在する.
解法3
最後に, この を求める. 上の議論から更に, をそれぞれ固定すると,
となる整数 が存在する. この は
である.
解法4
とすると, 解法2, 解法3の事実も合わせて,
であり, が解答になる.