Triomino
Triomino fiquru, üç kvadratdan ibarət əlaqəli bir fiqur adlanır. Belə fiqurların cəmi iki fərqli növü mövcuddur — onlar şəkildə təsvir edilmişdir. Digərləri yalnız döndürülməklə fərqlənir. m sətir və n sütundan ibarət düzbucaqlı sahə triomino fiqurları ilə doldurulmuş hesab olunur, əgər:
Hər bir fiqur sahənin daxilində yerləşir və dəqiq üç hüceyrəni örtür.
Fiqurlar üst-üstə düşmür.
Boş (fiqurla örtülməmiş) hüceyrələrin sayı iki və ya daha azdır.
Fiqurlarla doldurulmuş sahə düzbucaqlı cədvəl şəklində təqdim edilə bilər. 0 dəyəri doldurulmamış hüceyrəni göstərir. Eyni təbii dəyərlər hüceyrələrin bir fiqura aid olduğunu, fərqli dəyərlər isə fərqli fiqurlara aid olduğunu göstərir.
Bir neçə ədədi ikiölçülü cədvəlin məzmununu təhlil edərək, hər birinin triomino fiqurları ilə düzgün doldurulmuş düzbucaqlı sahəni təyin edib-etmədiyini müəyyən edən bir proqram yazın.
Giriş verilənləri
Birinci sətir düzbucaqlı cədvəllərin sayını t (2 ≤ t ≤ 10) ehtiva edir. Sonra bu struktura malik t blok gəlir. Blokun birinci sətri müvafiq cədvəlin sətir və sütun sayını göstərən iki tam ədəd m və n (1 ≤ m ≤ 200, 1 ≤ n ≤ 200) ehtiva edir. Sonra hər birində n tam ədəd olan m sətir gəlir. Bu ədədlərin dəyərləri 0 ilə [m×n/3] daxil olmaqla dəyişir. Giriş məlumatlarının ölçüsü 512 Kb-dan çox deyil.
Çıxış verilənləri
t sətir çıxarın, hər birində müvafiq cədvəlin triomino fiqurları ilə düzgün doldurulmuş sahəni təyin edib-etmədiyini göstərən böyük latın hərfləri ilə YES və ya NO sözü olsun.
Qeyd: Birinci blok üçün şəkil: