問題一覧 > 通常問題

No.3539 Parentheses Square

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 12
作問者 : nauclhlt / テスター : もの
ProblemId : 12106 / yukicoder 499 contest (順位表) / 自分の提出
問題文最終更新日: 2026-05-07 18:09:56
yukicoder 499 contestの他の問題:

問題文

文字列 $X$ に(連続)部分文字列として含まれる () を削除することを繰り返して $X$ を空文字列にできるとき、またその時に限り $X$ は正しい括弧列といいます。

正整数 $N$ と、., (, ) からなる長さ $N$ の文字列が $T_1, T_2, \cdots, T_N$ の $N$ 個与えられます。

各 $T_1, T_2, \cdots, T_N$ に含まれる . をすべて ( または ) に置換して $N$ 個の相異なる 正しい括弧列 を作ることは可能ですか?もし可能であれば1つ構築してください。

厳密には、以下をすべて満たすような長さ $N$ の文字列の $N$ 個組 $S_1, S_2, \cdots, S_N$ が存在するかを判定してください。もし存在するなら1つ構築してください。

  • 各 $i(1\leq i\leq N)$ について、$S_i$ は正しい括弧列
  • $T_{i, j}(1\leq i, j\leq N)$ が . でないならば、$S_{i, j}=T_{i, j}$
  • $1\leq i, j\leq N$ に対して、$i\neq j$ ならば $S_i\neq S_j$

ただし、文字列 $X$ に対して $X_i$ で $X$ の $i$ 文字目を表します。

入力

$N$
$T_1$
$T_2$
$\vdots$
$T_N$
  • $1\leq N\leq 200$
  • $T_i$ は.(、および)からなる長さ $N$ の文字列
  • $N$ は整数

出力

条件を満たす組 $S_1, S_2, \cdots, S_N$ が存在するなら、以下の形式で $N$ 行出力してください。

$S_1$
$S_2$
$\vdots$
$S_N$

存在しなければ、-1を出力してください。

$-1$

最後に改行してください。

サンプル

サンプル1
入力
8
(.......
.......)
.(......
....)...
......()
........
()......
.(....).
出力
((()()))
((())())
(()(()))
(()()())
((()))()
(()())()
()((()))
(((())))

解は複数個存在する場合がありますが、ここで示しているのはその一例です。

サンプル2
入力
2
..
..
出力
-1

条件を満たす $S_1, S_2$ は存在しません。よって-1のみを出力します。

サンプル3
入力
4
))))
((((
....
....
出力
-1

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