Official

A - Permutation Grid Editorial by nuip


\(n=5\) として、入力の順列 \(R,C\) がどちらも \(1,2,3,4,5\) である場合を考えます。確定していない場所を ? で表すことにします。

?????
?????
?????
?????
?????

\(5\) 行目の黒マスの数は \(5\) つなので、すべて黒です。 \(5\) 列目も同様です。

????#
????#
????#
????#
#####

\(1\) 行目の黒マスの数は \(1\) つなので、残りはすべて白です。 \(1\) 列目も同様です。

....#
.???#
.???#
.???#
#####

\(4\) 行目の黒マスの数は \(4\) つなので、残りはすべて黒です。 \(4\) 列目も同様です。

....#
.??##
.??##
.####
#####

\(2\) 行目の黒マスの数は \(2\) つなので、残りはすべて白です。 \(2\) 列目も同様です。

....#
...##
..?##
.####
#####

\(3\) 行目の黒マスの数は \(3\) つなので、残りはすべて黒です。 \(3\) 列目も同様です。

....#
...##
..###
.####
#####

よって、上から \(r\) 行目、左から \(c\) 列目のマスは、\(r+c\ge 6\) である場合に黒で、そうでないときに白となります。

一般の \(n\) についても入力の順列 \(R,C\) がどちらも \(1,2,\dots,n\) である場合、上から \(r\) 行目、左から \(c\) 列目のマスが、\(r+c\ge n+1\) である場合に黒で、そうでないときに白となることが証明できます(例えば、先程と同じように周りのマスを確定させて \(n-2\) の場合に帰着させることで、数学的帰納法で証明できます。)。

また、ある \(R_1,\dots,R_n, C_1,\dots,C_n\) についての答え \(M\) が構築できたとすると、 \(R_1,\dots,R_n\)\(a\) 番目と \(b\) 番目を入れ替えたものの答えは、\(M\)\(a\) 行目と \(b\) 行目を入れ替えたものになります。列についても同様です。

よって、上から \(r\) 行目、左から \(c\) 列目のマスは、\(R_r+C_c\ge n+1\) である場合に黒で、そうでないときに白です。

posted:
last update: