如果直接构造的话由于有a范围的限制,同时还要满足b的性质,非常恶心。考虑将两个性质分开考虑。首先如果我们确定了矩阵的第一行和第一列,那么我们就可以确定这个矩阵了。我们先构造出一个合法的矩阵,然后再对矩阵的第一行和第一列进行微调,是所有数都没满足范围。容易想到,比如要将\(a_{i,j}\)加上\(x\)那么就要在同矩阵里的减去x
,下一个矩阵在加上x,以此类推。所以最后的矩阵是这样子的:
\(\begin{matrix}
a_{1,1}+x_{1}+y_{1} & a_{i,j}+x_{2}-y_{1} & a_{1,1}+x_{3}+y_{1} & a_{1,1}+x_{4}-y_{1}\\
a_{1,1}-x_{1}+y_{2} & a_{i,j}-x_{2}-y_{2} & a_{1,1}-x_{3}+y_{2} & a_{1,1}-x_{4}-y_{2}\\
a_{1,1}+x_{1}+y_{3} & a_{1,1}+x_{2}-y_{3} & a_{1,1}+x_{3}+y_{3} & a_{1,1}+x_{4}-y_{3}\\
a_{1,1}-x_{1}+y_{4} & a_{1,1}-x_{2}-y_{4} & a_{1,1}-x_{3}+y_{4} & a_{1,1}-x_{4}-y_{4}
\end{matrix}\)
这个显然是不能用差分约束处理的,在遇到这种情况时考虑试着取相反数。
\(\begin{matrix}
a_{1,1}+x_{1}-y_{1} & a_{i,j}-x_{2}+y_{1} & a_{1,1}+x_{3}-y_{1} & a_{1,1}-x_{4}+y_{1}\\
a_{1,1}-x_{1}+y_{2} & a_{i,j}+x_{2}-y_{2} & a_{1,1}-x_{3}+y_{2} & a_{1,1}+x_{4}-y_{2}\\
a_{1,1}+x_{1}-y_{3} & a_{1,1}-x_{2}+y_{3} & a_{1,1}+x_{3}-y_{3} & a_{1,1}-x_{4}+y_{3}\\
a_{1,1}-x_{1}+y_{4} & a_{1,1}+x_{2}-y_{4} & a_{1,1}-x_{3}+y_{4} & a_{1,1}+x_{4}-y_{4}
\end{matrix}\)
然后一个差分约束就好了