B. Улаан ба цэнхэр бөмбөгнүүд

хугацааны хязгаарлалт 0.5 секунд

санах ойн хязгаарлалт 256 мегабайт

оролт стандарт оролт

гаралт стандарт гаралт

Хэрэглэгч Айнтад $n$ ширхэг улаан ба цэнхэр бөмбөгтэй стек байна. Тэр тодорхой үйлдлээр стек доторх бөмбөгнүүдийн өнгийг өөрчилж чадна.

  • Стекийн дээд талын бөмбөг улаан болсон үед стекийн дээрээс бөмбөг нэмнэ.
  • Дараа нь орой дээрх улаан бөмбөгийг цэнхэр өнгийн бөмбөгөөр сольно.
  • Эцэст нь стек дотор нийт $n$ бөмбөг болтол стекд цэнхэр бөмбөг нэмнэ.   Хэрвээ стек дотор ямар ч цэнхэр бөмбөг байхгүй бол Айнта энэ үйлдлийг хийж чадахгүй. Стекийн анхны байдал өгөгдсөн ба Айнта үйлдлийг хамгийн ихдээ хэдэн удаа давтан хийж чадахыг мэдэхийг хүсэж байна.

Оролт

Эхний мөр $n$ ($1 ≤ n ≤ 50$) бүхэл тоог агуулна. Энэ нь стек доторх бөмбөгний тоо.

Хоёр дахь мөр нь стекийн анхны төлөвийг тодорхойлох $s$ ($|s| = n$) тэмдэгт мөрийг агуулна. $s$ тэмдэгт мөрийн $i$-р тэмдэгт нь $i$-р бөмбөгний өнгийг илэрхийлнэ (бид стекийн бөмбөгнүүдийг дээрээс доошоо дугаарласан). Хэрвээ тэмдэгт "$R$" бол улаан өнгө, "$B$" бол цэнхэр өнгө.

Гаралт

Айнтагийн үйлдлийг давтан хийж чадах хамгийн их тоог хэвлэнэ.

С++ хэлний оролт гаралтын хэлбэрт $\%lld$ буюу тодорхойлбол 64-bit бүхэл тоог бүү хэрэглээрэй. Харин $cin$, $cout$ урсгал эсвэл $\%I64d$ хэлбэрийг ашиглавал тохиромжтой.

Орчуулсан: Даариймаа

Жишээ тэстүүд

Оролт
3
RBR
Гаралт
2
Оролт
4
RBBR
Гаралт
6
Оролт
5
RBBRR
Гаралт
6

Тэмдэглэл

Эхний жишээг дор дүрсэлсэн байна. Хэрэглэгч Айнта эхний үйлдлийг хэрхэн хийх тайлбар. Тэр нэг улаан бөмбөг гаргаад, голын цэнхэр бөмбөгний өнгийг улаан өнгөөр солиод, нэг цэнхэр бөмбөг нэмнэ.

Хэрэглэгч Айнта хоёр дахь үйлдлийг хэрхэн хийх тайлбар. Тэр улаан бөмбөг гаргахгүй, зүгээр л цэнхэр өнгөтэй бөмбөгийг улаанаар сольно.

Одоо Айнта ямар ч үйлдэл хийж чадахгүй, учир нь стек дотор цэнхэр бөмбөг байхгүй. Айнта үйлдлийг хоёр удаа хэрэглэсэн, тэгэхээр хариулт 2.

Хоёр дахь жишээг дор дүрсэлсэн байна. Цэнхэр сум нэг үйлдлийг илэрхийлнэ.

Сэтгэгдлүүдийг ачааллаж байна...