题号:NC231677
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
众所周知sulp_hsalF经常在牛客出题,以换取喜欢的蝴蝶结。马上就是新的一年了,此时sulp_hsalF又想出了一个新的好idea。但是他为了想这个idea饿坏了肚子,由于家里实在没有吃的了,他决定让你将这个idea煎起来给他当夜宵。
一个好的idea具有两面性并且蕴有数学的芳香,所以可以看作两面 n * n 的矩阵(如同两层叠在一起的肉饼)。矩阵的每一个元素aij代表idea在该点的成熟度 ,同时,当某个点的成熟度超过2147483647后,他会因为过于成熟而回归稚拙,即 aij = aij - 4294967296
sulp_hsalF拥有一个开启后会不断增强火力的微波煎锅,这个神奇的煎锅会加热物品(使物品成熟),且在t秒时加热的幅度 F(t) 和煎锅已开火的时间 t 的关系为 F(t) = t。当将idea任意一面朝下放至锅中煎时,idea朝下的一面矩阵将受到100%的热量,同时这一面的所有矩阵元素将在每个单位时间中提高F(t)的成熟度,另一面的矩阵元素只会收到50%的热量,提高F(t) / 2.0的成熟度。你可以随时翻面(翻面不消耗时间,但你的翻面一定在单位时间的间隔处进行)。~现在sulp_hsalF要去睡一觉,他希望醒来时可以吃到一份至少有一个点成熟度为2022的金黄idea。你可以在最短的时间内做出这样一份黄金idea吗
输入描述:
第一行一个正整数n,表示矩阵的大小 其中 n ≤ 522。
接下来n * 2行,每行n个以空格分割整数aij,表示矩阵的元素值,前n行和后n行分别表示2面矩阵,-2147483648 ≤ aij ≤ 2147483647
输出描述:
如果可以做出,那么输出一个整数,即 最短的时间t 否则 输出 \n
示例1
输入
复制
2
2000 2019
2023 2023
2023 2023
2023 2023
说明
将有2019的那一面朝下煎2个单位时间即可
第一个单位时间时,idea变成如下状态
2001 2020
2024 2024
2023.5 2023.5
2023.5 2023.5
第二个单位时间时,idea变成如下状态
2003 2022
2026 2026
2024.5 2024.5
2024.5 2024.5