Hàng rào

View as PDF

Time limit: 1.0s , Memory limit: 256M , Points: 100 (partial)

Khu vườn Harden có kích thước n \times n ô vuông, các hàng được đánh số từ 1 đến n từ trên xuống dưới và các cột được đánh số từ 1 đến n từ trái sang phải. Tại mỗi ô vuông có thể là đất trống (ký hiệu .) hoặc tảng đá (ký hiệu #) hoặc được trồng một bông hoa có giá trị từ 1 đến 9 (ký hiệu bởi ký tự chữ số).

Bob muốn xây dựng một hàng rào hình vuông với độ dài cạnh bằng k, hàng rào phải nằm trong khu vườn. Bob muốn trên cạnh của hàng rào không được có bất ký tảng đá hay bông hoa nào, nhưng tảng đá và bông hoa vẫn có thể nằm ở bên trong hàng rào. Giá trị của một hàng rào bằng tổng giá trị các bông hoa nằm bên trong hàng rào đó.

Bạn hãy giúp Bob xác định giá trị lớn nhất của hàng rào mà Bob có thể xây, trả lời với m câu hỏi.

Input

  • Dòng đầu tiên chứa hai số nguyên nm là kích thước khu vườn và số lượng câu hỏi (5 \le n \le 1000 ; 1 \le m \le 200).
  • n dòng tiếp theo, mỗi dòng chứa n ký tự mô tả khu vườn, các ký tự có thể là . (đất trống) hoặc # (tảng đá) hoặc ký tự chữ số từ 0 đến 9 (giá trị bông hoa).
  • m dòng tiếp theo, mỗi dòng chứa một số nguyên k là kích thước của hàng rào (3 \le k \le n).

Output

  • Với mỗi câu hỏi, in ra trên một dòng là giá trị lớn nhất có thể của hàng rào, nếu không thể xây dựng được bất kỳ hàng rào nào, in ra -1.

Examples

Sample Input
5 3
.....
.5.7.
...#.
.9#..
.....
3
4
5
Sample Output
5
-1
21

Scoring

  • Subtask 1 - 28\% số điểm: n \le 50
  • Subtask 2 - 34\% số điểm: n \le 300
  • Subtask 3 - 38\% số điểm: Không có ràng buộc gì thêm

Notes

Trong câu hỏi đầu tiên, có thể xây hàng rào với kích thước k=3 như sau:

drawing

Lưu ý rằng cách xây hàng rào sau đây không hợp lệ:

drawing

Trong câu hỏi thứ hai, có thể nhận thấy rằng không có cách xây hàng rào nào có kích thước k=4.

Trong câu hỏi thứ ba, có thể xây hàng rào với kích thước k=5 như sau:

drawing

Comments