Trạng thái

Đề bài

Giả sử \(A\) là một lưới ô vuông gồm \(m\) dòng và \(n\) cột. Các dòng của lưới được đánh số từ \(1\) đến \(m\) theo thứ tự từ trên xuống dưới, các cột được đánh số từ \(1\) đến \(n\) theo thứ tự từ trái sang phải. Ô nằm trên dòng \(i\) và cột \(j\) chứa số nguyên không âm \(a_{i,j}\).

Một hình vuông gồm các ô liên tiếp trong lưới \(A\) được gọi là bảng vuông gần nguyên tố nếu có không quá một ô của hình vuông chứa số không phải là số nguyên tố.

Cho \(m\), \(n\) và các số ghi trên lưới \(A\), hãy tìm bảng vuông gần nguyên tố có diện tích lớn nhất.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên \(m\)\(n\).
  • Trong \(m\) dòng tiếp theo, dòng thứ \(i\) chứa \(n\) số nguyên không âm \(a_{i,1}, a_{i,2}, \ldots, a_{i,n}\) kiểu 32 - bit.

Dữ liệu ra

  • In ra một số nguyên là diện tích lớn nhất của một bảng vuông gần nguyên tố tìm được.

Ràng buộc

  • \(a_{i,j}\) là số nguyên không âm.
  • \(m \times n \le 10^6\).

Subtask

  • Subtask 1 (25%): \(m, n \le 10\).
  • Subtask 2 (25%): \(m, n \le 50\).
  • Subtask 3 (25%): \(m, n \le 300\).
  • Subtask 4 (25%): Không có ràng buộc bổ sung.

Sample Input 1

3 4
1 2 3 4
1 3 5 7
2 4 6 8

Sample Output 1

4

Giải thích

Có thể chọn hình vuông kích thước \(2 \times 2\) gồm các phần tử:

2 3
3 5

Tất cả các phần tử trong hình vuông này đều là số nguyên tố nên hình vuông thỏa mãn yêu cầu. Diện tích của hình vuông là \(2 \times 2 = 4\), đồng thời đây là diện tích lớn nhất có thể đạt được.

Thông tin
Thông tin bài tập
Gửi bài giải
Điểm
100
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
982 M
I/O
stdin -> stdout
Tác giả
Loại đề bài
Phương pháp: Quy hoạch động, Số học: Sàng nguyên tố
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text