競プロキャンプ2023関西
コンテスト日時
2023/08/20 (Su) 09:00 - 11:00

F - Reverse and Inverse

Flavor
2
s
1024
MB
100

問題文

$T$ 個のテストケースについて次の問題を解いてください。
 
$2N$ 桁以下の正整数 $S$ と $G$ があります。
以下の $2$ 種類の操作を好きな順序で好きな回数 ($1$ 回も行わなくても良い) 繰り返して $S=G$ にできるか判定してください。
操作 $1$:$S$ を $2N$ 桁の整数とみなしてひっくり返す(例:$N=2$ で $2045\rightarrow 5402, 0042\rightarrow 2400, 5720\rightarrow 0275$)
操作 $2$:$S$ を $10^{2N}-S$ に置き換える

制約

  • $1\leq T \leq 10^4$
  • $1 \leq N \leq 9$
  • $1 \leq S, G < 10^{2N}$
  • 入力は全て整数

入力

入力は以下の形式で標準入力から与えられる。ここで $\text{test}_i$ は $i$ 番目のテストケースを意味する。

$T$
$\text{test}_1$
$\text{test}_2$
$\vdots$
$\text{test}_T$

各テストケースは以下の形式で与えられる。

$N$
$S$ $G$

出力

$T$ 行出力せよ。$i$ 行目には $i$ 番目のテストケースに対する答えを出力せよ。
各テストケースでは $S=G$ にできるなら Yes を、そうでないなら No を出力せよ。

入力例 1
2 2 1234 5679 3 123456 234567
出力例 1
Yes No

$1$ つめの入力では、操作 $1$ $\rightarrow$ 操作 $2$ の順で操作を行うと
$1234$ $\rightarrow$ $4321$ $\rightarrow$ $5679$
となり $S=G$ にできます。
 
$2$ つめの入力ではどのように操作を行っても $S=G$ にすることはできません。

提出
C++23 (g++ 12.2.0)