CF677E.Vanya and Balloons
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Vanya plays a game of balloons on the field of size n×n , where each cell contains a balloon with one of the values 0 , 1 , 2 or 3 . The goal is to destroy a cross, such that the product of all values of balloons in the cross is maximum possible. There are two types of crosses: normal and rotated. For example:
<br></br>**o**<br></br>**o**<br></br>ooooo<br></br>**o**<br></br>**o**<br></br>
or
<br></br>o***o<br></br>*o*o*<br></br>**o**<br></br>*o*o*<br></br>o***o<br></br>
Formally, the cross is given by three integers r , c and d , such that d<=r,c<=n−d+1 . The normal cross consists of balloons located in cells (x,y) (where x stay for the number of the row and y for the number of the column), such that ∣x−r∣⋅∣y−c∣=0 and |x-r|+|y-c|<d . Rotated cross consists of balloons located in cells (x,y) , such that ∣x−r∣=∣y−c∣ and |x-r|<d .
Vanya wants to know the maximum possible product of the values of balls forming one cross. As this value can be large, output it modulo 109+7 .
输入格式
The first line of the input contains a single integer n ( 1<=n<=1000 ) — the number of rows and columns in the table with balloons.
The each of the following n lines contains n characters '0', '1', '2' or '3' — the description of the values in balloons.
输出格式
Print the maximum possible product modulo 109+7 . Note, that you are not asked to maximize the remainder modulo 109+7 , but to find the maximum value and print it this modulo.
输入输出样例
输入#1
4 1233 0213 2020 0303
输出#1
108
输入#2
5 00300 00300 33333 00300 00300
输出#2
19683
输入#3
5 00003 02030 00300 03020 30000
输出#3
108
输入#4
5 21312 10003 10002 10003 23231
输出#4
3
输入#5
5 12131 12111 12112 21311 21212
输出#5
24
说明/提示
In the first sample, the maximum product is achieved for a rotated cross with a center in the cell (3,3) and radius 1 : 2⋅2⋅3⋅3⋅3=108 .