Müəmmalı Labirint#3598

Müəmmalı Labirint

30 saniyə
256 meqabayt
Çətin

İki ölçülü labirintdə bir robot var. Bu dəfə labirintin bir girişi və bir çıxışı mövcuddur.

Əvvəlki məsələdə olduğu kimi, labirint H×W ölçülü şəbəkə hüceyrələrindən ibarətdir, yuxarı tərəfi şimala baxır və hər bir hüceyrə ya boş, ya da divardır. Lakin əvvəlkindən fərqli olaraq, boş hüceyrələrdən biri giriş, digəri isə çıxışdır.

Robot olduqca mürəkkəbdir | müəyyən bir idarəetmə var, amma tam deyil. O, irəli və dön adlı iki düyməsi olan bir idarəetmə paneli ilə əlaqəlidir. İrəli düyməsi, mümkün olduqda, robotu növbəti hüceyrəyə irəli aparır. Robot divara və ya labirintin xaricinə hərəkət edə bilməz. Dönmə düyməsi robotu proqramlaşdırıldığı kimi döndərir. Burada proqram, hər biri ya 'L' (sola dönməyi göstərir) ya da 'R' (sağa dönməyi göstərir) olan N əmrdən ibarət sonlu bir ardıcıllıqdır. İlk dönmə birinci əmri izləyir; ikinci dönmə ikinci əmri izləyir; sonrakı dönmələr də eyni şəkildə. Əmrlər tükəndikdə dönmə düyməsi işləmir; lakin bu halda irəli düyməsi hələ də işləyir. Robot hər dəfə 90 dərəcə dönür.

Robot əvvəlcə giriş hüceyrəsinə qoyulur və şimala yönəldilir. Sizin vəzifəniz, düzgün idarə edildikdə, onun çıxış hüceyrəsinə çata biləcəyini müəyyən etməkdir.

Giriş

Giriş bir sıra datasetlərdən ibarətdir. Hər dataset aşağıdakı kimi formatlanır.

H W N s_1 ... s_N c_{1,1}c_{1,2} ... c_{1,W} ... c_{H,1}c_{H,2} ... c_{H,W}

Bir datasetin ilk sətri üç tam ədəd H, W və N (1 ≤ H, W ≤ 1000, 1 ≤ N ≤ 1000000) ehtiva edir.

İkinci sətir N əmrdən ibarət bir proqram ehtiva edir.

Sonrakı H sətirin hər biri dəqiq W simvol ehtiva edir. Bu simvolların hər biri labirintin bir hüceyrəsini təmsil edir. "." boş, "#" divar, "S" giriş, və "G" çıxışı göstərir. Dəqiq bir giriş və bir çıxış hüceyrəsi var.

Girişin sonu üç sıfır olan bir sətirlə göstərilir.

Çıxış

Hər dataset üçün, robotun çıxışa çata biləcəyini bir sətirdə çıxarın: "Yes" əgər çata bilirsə və ya "No" əks halda (tırnaqsız).

Nümunələr

Nümunə 1

Loading
Loading