Skibidi Sətir#13091

Skibidi Sətir

1 saniyə
256 meqabayt

sətri üçün ilə sətrinin müxtəlif boş olmayan altsətirlərinin sayını işarə edək. Məsələn, f(\mathtt{aab}) = 5: altsətirlər , , , , .

Sizə tam ədədi və uzunluğu n-2 olan, simvolları t_1, \ldots, t_{n-2} kimi indekslənən ikilik sətri verilir.

Uzunluğu olan sətrini Skibidi adlandıracağıq, əgər boyunca uzunluğu olan pəncərəni sürüşdürdükdə n-2 pəncərə alınırsa və hər 1 \le i \le n-2 üçün -ci pəncərə t_i şərtini ödəyirsə:

f\!\left(s_i s_{i+1} s_{i+2}\right) \bmod 2 = t_i.

Kiçik latın hərflərindən ibarət leksikoqrafik baxımdan ən kiçik Skibidi sətrini tapın.

^\daggerQalıq əməliyyatı. Müsbət tam və ədədləri üçün u \bmod v yazılışı -nun -yə bölünməsindən alınan qalığı bildirir.

Məsələn, s = \mathtt{aabcba} üçün bizdə vacib ! : mütləq O(3^6*n) dp ilə həll edilməlidir

\big(f(\mathtt{aab}) \bmod 2,\ f(\mathtt{abc}) \bmod 2,\ f(\mathtt{bcb}) \bmod 2,\ f(\mathtt{cba}) \bmod 2\big) = (1, 0, 1, 0),

alınır, deməli t = \mathtt{1010}, yəni t_1=1,\ t_2=0,\ t_3=1,\ t_4=0.

Giriş

Birinci sətirdə bir tam ədəd (1 \le T \le 10^4) — test hallarının sayı verilir.

Hər test halının birinci sətrində bir tam ədəd (3 \le n \le 2 \cdot 10^5) — axtarılan sətrin uzunluğu verilir.

Hər test halının ikinci sətrində uzunluğu n-2 olan ikilik sətri (t_i \in \{\mathtt{0}, \mathtt{1}\}) verilir.

Bütün test halları üzrə qiymətlərinin cəminin 2 \cdot 10^5-i aşmadığına zəmanət verilir.

Çıxış

Hər test halı üçün şərtləri ödəyən, kiçik latın hərflərindən ibarət leksikoqrafik baxımdan ən kiçik sətrini çap edin.

Nümunələr

Nümunə 1

Loading
Loading

Qeyd

Birinci test halı üçün s = \mathtt{aabcba}:

  • i = 1: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

  • i = 2: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

  • i = 3: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

  • i = 4: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

Beləliklə, alınan tələb olunduğu kimi -a bərabərdir.

İkinci test halı üçün s = \mathtt{abcbaa}:

  • i = 1: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

  • i = 2: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

  • i = 3: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

  • i = 4: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

Beləliklə, alınan tələb olunduğu kimi -ə bərabərdir.

Üçüncü test halı üçün s = \mathtt{aaabcaa}:

  • i = 1: sətrinin f = 3 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

  • i = 2: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

  • i = 3: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

  • i = 4: sətrinin f = 6 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 0.

  • i = 5: sətrinin f = 5 müxtəlif boş olmayan altsətri var, deməli f \bmod 2 = 1.

Beləliklə, alınan tələb olunduğu kimi -ə bərabərdir.

Bal hesablama

  1. Altməsələ ( bal): (t=\mathtt{00000 \ldots 0})

  2. Altməsələ ( bal): (t=\mathtt{11111\ldots 1})

  3. Altməsələ ( bal): (1 \le \sum n \le 1000)

  4. Altməsələ ( bal): (1 \le \sum n \le 10^4)

  5. Altməsələ ( bal): Əlavə məhdudiyyət yoxdur