Bảo Huy là chú ếch đẹp trai nhất đầm sen ITK19. Đầm sen này được chia thành một bảng ô vuông gồm \(M\) hàng (đánh số từ trên xuống dưới) và \(N\) cột (đánh số từ trái qua phải). Ta quy ước ô nằm ở giao điểm của hàng \(i\) và cột \(j\) là ô \((i, j)\). Một số ô trong đầm có chứa một lá sen nổi (ký hiệu o
) để Huy có thể nhảy lên, các ô còn lại có 100% bề mặt là nước (ký hiệu là .
). Huy cần nhảy từ ô có ký tự S
đến ô có ký tự T
(hai ô này đều mặc định chứa một lá sen) theo quy tắc: ở mỗi bước anh chỉ có thể nhảy từ ô hiện tại đến một ô chứa lá sen trên cùng hàng hoặc cùng cột. muốn bỏ đi một số lá sen trong đầm (trừ hai lá tại S
và T
) để Huy không còn có thể nhảy từ S
đến T
nữa. Các bạn hãy lập trình giúp xác định số lá sen ít nhất cần bỏ đi nhé!
Input
-
Dòng đầu hai số nguyên dương \(M\) và \(N\) \((2\leq M, N\leq 100)\).
-
\(M\) dòng sau, mỗi dòng chứa \(N\) ký tự mô tả đầm sen.
Output
- Một số nguyên là số lượng lá sen ít nhất cần bỏ để Huy không thể nhảy từ
S
đếnT
. Nếu không tìm được phương án thỏa mãn thì in ra \(-1\).
Example
Test 1
Input
3 3
S.o
.o.
o.T
Output
2
Note
cần bỏ đi lá sen ở góc trên bên phải và góc dưới bên trái.
Test 1
Input
3 4
S...
.oo.
...T
Output
0
Test 1
Input
4 3
.S.
.o.
.o.
.T.
Output
-1
Test 1
Input
10 10
.o...o..o.
....o.....
....oo.oo.
..oooo..o.
....oo....
..o..o....
o..o....So
o....T....
....o.....
........oo
Output
5
Bình luận