| For All Solvers
NF杯2024

NF杯2024(J)

 nnunounnunououou に対して操作を行うと nnunnonnunno となるので,nnunnonnunno に有限回の操作を行うことで得られる文字列の総数を求めればよい.
 nnunnnnunn に操作を行うことで得られる文字列について考察する.nn のうち左から奇数番目にあるものの数を nln_l,偶数番目にあるものの数を nrn_r とすると,操作によって nlnrn_l-n_r の数は不変なので条件を満たす文字列について nl=nrn_l=n_r が成り立つ.
 また,nnunnnnunn22 回の操作で uuuuuuuuuu にすることができ,任意の 1i<j5,i+j1(mod2)1\leq i\lt j\leq 5,i+j\equiv 1\pmod{2} なる整数 i,ji,j に対して,uuuuuuuuuu の左から ii 番目と i+1i+1 番目の uuuui+2i+2 番目と i+3i+3 番目の uuuu\cdotsj1j-1 番目と jj 番目の uuuu に操作を行った後,i+1i+1 番目と i+2i+2 番目の uuuui+3i+3 番目と i+4i+4 番目の uuuu\cdotsj2j-2 番目と j1j-1 番目の uuuu に操作を行うことで,ii 番目と jj 番目のみが nn であるような文字列が得られるので,これらをうまく組み合わせることで任意の nl=nrn_l=n_r なる文字列を得られる.
 一方,oo が右端にない文字列についても,oo の左側において上と同様に nl,nrn_l,n_r を定め,oo の右側において uu のうち(文字列の左端から数えて)奇数番目にあるものの数を ulu_l,偶数番目にあるものの数を uru_r とすれば nlnrul+urn_l-n_r-u_l+u_r は操作で不変であり,逆にこれを満たすような文字列について適切な操作を行い oo を右端にした後に上と同様の議論をすることで nnunnonnunno にできることがわかる.
 以上より,nl=nrn_l=n_r なる文字列の数を求めればよく,これは 3C02C0+3C12C1+3C22C2=10{}_{3}\mathrm C_{0}\cdot {}_{2}\mathrm C_{0}+{}_{3}\mathrm C_{1}\cdot {}_{2}\mathrm C_{1}+{}_{3}\mathrm C_{2}\cdot {}_{2}\mathrm C_{2}=10 である.よって,これらに oo を挿入する場合の数を考えることで 106=6010\cdot 6=60 より題意を満たす文字列の総数は60個と求まる.

解説YouTube

解説YouTubeが存在しません.