Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

PTIT134B - Mê cung lồi

Tom được ông chủ giao cho nhiệm vụ sắp xếp nhà kho để nó trở thành một mê cung. Ông chủ đưa cho Tom một bản thiết kế.

Trên bản thiết kế có 2 màu Trắng (White) và Đen (Black). Ô trắng thể hiện ở đó là thùng hàng làm vật cản, ô đen là ô không có thung hàng nào cả.

Tom rất thích thú với mê cung kiểu này. Anh gọi nó là một mê cung lồi, nếu như anh ta xuất phát từ ô đen bất kì, và đích là bất kì ô đen nào, anh ta di chuyển chỉ rẽ (trái hoặc phải) tối đa 1 lần.

Hình vẽ minh họa: hình thứ nhất mô tả một mê cung lồi, hình thứ hai thì không phải như vậy.

Input

Dòng đầu tiên gồm 2 số n, m (<= 50).

n dòng tiếp theo, mỗi dòng chứa m kí tự, là mô tả của bản thiết kế.

Biết rằng chắc chắn sẽ có ít nhất một ô đen.

Output

Hãy in ra "YES" nếu mê cung là mê cung lồi, trong trường hợp ngược lại in ra "NO".

Example

Input:
Input 1:
3 4
WWBW
BWWW
WWWB
Input 2:
3 1
B
B
W

Output:

Output 1:
3 4
NO
Output 2:
YES

Được gửi lên bởi:adm
Ngày:2013-02-26
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:ASM32-GCC ASM32 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA

hide comments
2017-10-22 08:43:20
CODE AC C++ http://j.gs/9aGB
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.