eolymp
bolt
Try our new interface for solving problems

Tantriks

\includegraphics{https://static.e-olymp.com/content/9f/9fda21e06d43e55f50a3e7b797176226749725f1.jpg} Tantriks - iki nəfərlik \textbf{56} altıbucaqlı pilətəli oyundur. Hər bir pilətə müxtəlif rəngli üç xətti ehtiva edir. Hər bir oyunçu əlində beş pilətə tutur və onları oyun sahəsinə yerləşdirərək gediş edirlər. Şəkildə doqquz pilətənin yerləşdirilməsindən sonrakı vəziyyət əks olunmuşdur. Xətlər dörd rəngdədir: qırmızı, yaşıl, sarı və göy. Heç bir iki pilətə eyni deyildir, heç bir pilətə döndərilməsi simmetrik deyildir. Giriş verilənlərində pilətə xətlərin rənglərini saat əqrəbi istiqamətində təyin edən altı hərflə verilir. '\textbf{R}', '\textbf{G}', '\textbf{Y}' və '\textbf{B}' baş hərfləri uyğun olaraq qırmızı, yaşıl, sarı və göy rəngləri ifadə edir. Oyunda gediş bir pilətənin bir oyunçunun əlindən oyun sahəsinə növbəti qaydada yerləşdirilməsidir: \begin{enumerate} \item Pilətəni yerləşdirilmiş mövcud pilətənin yanına qoymaq olar. \item Bütün toxunan pilətələrin uyğun gələn xətləri eyni rəngdə olmalıdır. \item Üç pilətə ilə əhatə olunmuş boş yer oyuq adlanır. Əgər oyunçu öz pilətələrindən birini oyuğa yerləşdirə bilərsə, o bunu anında etməsi lazımdır. Əgər bir neçə oyuq varsa və ora pilətə yerləşdirməyin bir-neçə üsulu olarsa, onda bu variantlardan biri seçilə bilər. \item Eyni rəngli üç pilətə ilə əhatə olunmuş oyuğa pilətə yerləşdirməyə icazə verilmir (belə bir oyuğu doldurmaq üçün pilətələr yoxdur). \item Bir oyuqla qonşu olan iki bitişik pilətə nəzarət olunan sıra təşkil edir. Plitələri nəzarət olunan sıra boyunca yerləşdirmək olmaz. \end{enumerate} \includegraphics{https://static.e-olymp.com/content/4e/4e6eb3634d7ea5fc01288ae43cb3c348f217f99d.jpg} Əgər oyun sahəsində bir və ya bir neçə oyuq olarsa və oyunçunun uyğun pilətəsi olmazsa, onda o istənilən mümkün gedişi edə bilər. Bəzən oyunçu \textbf{4}-cü qaydaya görə öz pilətəsini oyuğa qoya bilməz. Şəkildə şərh edilmiş qaydalar əks olunmuşdur. Sahədə üç oyuq var. Seçilmiş pilətəni sol aşağı oyuğa yerləşdirmək olmaz, belə ki, bu halda yeni üç qırmızı xətti olan yeni oyuq alınır. Tünd boz xanalar oyuqların təşkil etdiyi nəzarət olunan sıralarda yerləşirlər; buraya pilətə yerləşdirmək olmaz. Əgər oyunçu üç oyuqdan birini doldura bilmirsə, o ağ xanalardan birinə pilətə yerləşdirə bilər. Əgər artıq oyun sahəsinə yerləşdirilmiş pilətələrin mövqeyi və istiqaməti, həmçinin oyunçunun əlində olan pilətələr məlumdursa, bu oyunçunun edə biləcəyi mümkün gedişlərin sayını tapma tələb olunur. Əgər pilətəni müxtəlif yerlərə yerləşdirmək və ya müxtəlif üsullarla istiqamətləndirmək mümkündürsə, onda bu variantlardan hər birini müxtəlif hesab etmək olar. \InputFile Birinci sətir (\textbf{50}-dən çox olmayan) testlərin sayını ehtiva edir. \includegraphics{https://static.e-olymp.com/content/88/8888d69f753a1d7d450ef496149c8c7993856d3f.jpg} Hər bir test oyun sahəsindəki pilətələrin \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{20}) sayını ehtiva edən sətirlə başlayır. Növbəti \textbf{n} sətir bu pilətələrin koordinatlarını və təsvirini ehtiva edir. Pilətənin təsvirindəki birinci hərf yuxarı gedən xəttə uyğundur; digər xətlərin rəngləri saat əqrəbinin istiqamətində verilir. Növbəti sətir oyunçunun əlindəki \textbf{5} pilətəni təsvir edir, pilətələrin təsviri bir boşluqla ayrılır. Xanalar və koordinatlar arasındakı uyğunluq sağdakı şəkildə göstərilmişdir (oyun sahəsi sonsuzdur və yalnız bu koordinatlarla məhdudlaşdırılmamışdır). Bütün giriş pilətələri düzgündür və müxtəlifdir. Oyun sahəsində oyunda real ola biləcək mövqelər verilir. Yerləşdirilmiş pilətələrdən birinin koordinatları \textbf{0}, \textbf{0}-dır. \OutputFile Hər bir test üçün ayrı sətirdə mümkün gedişlərin sayını ifadə edən yeganə ədədi verməli.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 64 MiB
Giriş verilənləri #1
2
6
0 0 BRYRBY
1 0 GRGBRB
-1 1 GGYBYB
0 1 YYBBGG
-2 2 YYBGBG
-3 3 BYGYGB
BBRRGG GBYBYG RBRBGG GYBGBY GRBBRG
4
0 0 BYYGBG
-1 1 GRGBBR
1 0 YRBRYB
2 0 YGGRRY
RBBRYY GBGYBY YBBRYR YBYBRR RBBRGG
Çıxış verilənləri #1
46
2