問題一覧 > 通常問題

No.3131 Twin Slide Puzzles

レベル : / 実行時間制限 : 1ケース 4.000秒 / メモリ制限 : 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 23
作問者 : 👑 loop0919 / テスター : Iroha_3856 lif4635 ルク
4 ProblemId : 11740 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2025-04-25 21:18:34

問題文

パズルゲーマーの茜ちゃんと葵ちゃんは、お揃いのスライドパズルを入手したいです。

整数 $N$ と $N$ 次正方行列 $A$ が与えられます。また、 $N$ 次正方行列 $X$ があり、はじめ $X_{i, j} = (i - 1) N + (j - 1)$ です。

$X_{i, j} = 0$ となる $(i, j)$ とそれに隣接する $(i', j')$ を選び、 $X_{i, j}$ と $X_{i', j'}$ を swap することをスライド操作と定義します。
ここで $(i, j)$ と $(i', j')$ が隣接するとは、$|i - i'| + |j - j'| = 1$ を満たすことをいいます。

また、$N$ 次正方行列 $M$ に対する楽しさを、 $\displaystyle \sum_{i = 1}^N \sum_{j = 1}^N (A_{i, j} \times M_{i, j})$ と定義します。

以下の条件をすべて満たす $N$ 次正方行列の組 $(P, Q)$ が存在するか判定し、存在するならば $1$ つ提示してください。

  • $P \ne Q$
  • $X$ に対しスライド操作を $0$ 回以上の好きな回数繰り返すことで、$X = P$ にすることが可能である。
  • $X$ に対しスライド操作を $0$ 回以上の好きな回数繰り返すことで、$X = Q$ にすることが可能である。
  • $P$ の楽しさと $Q$ の楽しさは等しい。

制約

  • $2 \le N \le 500$
  • $1 \le A_{i, j} \le 10^8$
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられます。

$N$
$A_{1, 1}$ $A_{1, 2}$ $\cdots$ $A_{1, N}$
$A_{2, 1}$ $A_{2, 2}$ $\cdots$ $A_{2, N}$
$\vdots$
$A_{N, 1}$ $A_{N, 2}$ $\cdots$ $A_{N, N}$

出力

条件をすべて満たす $N$ 次正方行列の組 $(P, Q)$ が存在しなければ、 No とのみ出力してください。

存在するならば、$(P, Q)$ を以下の形式で出力してください。答えが複数存在する場合、いずれを出力しても正解と判定されます。

Yes
$P_{1, 1}$ $P_{1, 2}$ $\cdots$ $P_{1, N}$
$P_{2, 1}$ $P_{2, 2}$ $\cdots$ $P_{2, N}$
$\vdots$
$P_{N, 1}$ $P_{N, 2}$ $\cdots$ $P_{N, N}$
$Q_{1, 1}$ $Q_{1, 2}$ $\cdots$ $Q_{1, N}$
$Q_{2, 1}$ $Q_{2, 2}$ $\cdots$ $Q_{2, N}$
$\vdots$
$Q_{N, 1}$ $Q_{N, 2}$ $\cdots$ $Q_{N, N}$

サンプル

サンプル1
入力
2
1 2
3 4
出力
Yes
0 2 
3 1 
0 3 
1 2

$ P = \left[ \begin{array}{cc} 0 & 2 \cr 3 & 1 \end{array} \right], Q = \left[ \begin{array}{cc} 0 & 3 \cr 1 & 2 \end{array} \right] $ のとき、以下のことがいえるため問題文の条件を満たします。

  • $P \ne Q$ である。
  • はじめ $X = \left[ \begin{array}{cc} 0 & 1 \cr 2 & 3 \end{array} \right]$ の状態からスライド操作を繰り返し行うことで、$X = P$ と $X = Q$ の両方をそれぞれ達成できる。
  • $\displaystyle \sum_{i = 1}^N \sum_{j = 1}^N (A_{i, j} \times P_{i, j}) = 17, ~ \displaystyle \sum_{i = 1}^N \sum_{j = 1}^N (A_{i, j} \times Q_{i, j}) = 17$となり、$2$ つの行列の楽しさは等しい。
サンプル2
入力
3
1 10 100
1000 10000 100000
1000000 10000000 100000000
出力
No

このとき、問題文の条件を満たす $P, Q$ は存在しません。

サンプル3
入力
5
2 13 31 51 71
3 17 37 53 73
5 19 41 59 83
7 23 43 61 89
11 29 47 67 97
出力
Yes
0 18 21 12 11
7 15 10 16 5
4 13 6 14 24
8 2 9 22 1
17 3 20 19 23
2 19 10 5 22
15 23 9 14 18
6 11 8 13 20
3 1 0 7 21
16 12 24 4 17

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。