問題一覧 > 通常問題

No.2820 Non-Preferred IUPAC Nomenclature

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 67
作問者 : 🦠みどりむし🦠みどりむし / テスター : achapiachapi FplusFplusFFplusFplusF viral8viral8 👑 AngrySadEightAngrySadEight
0 ProblemId : 10799 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-07-27 19:43:04

問題文

注:この問題はフィクションです。現代の化学とは大きな乖離があります。

炭素原子は、$4$ つ以下の、自身以外の炭素原子と (直接) 結合することができます。
$1$ つ以上の炭素原子が互いに結合しあったものを、炭化水素と呼びます。

また、任意の炭化水素は、名前となる文字列と、ちょうど $1$ つのとなる炭素原子をそれぞれ持ちます。

アルカンは、次の規則によって再帰的に構成される炭化水素です:

  • いずれも根に (直接) 結合している炭素原子の個数が $4$ つ未満であるような、相異なる $4$ つ以下のアルカンからなる集合 $S$ について、$S$ に属するすべてのアルカンそれぞれの根に、共通の $1$ 炭素原子 $X$ が結合して得られる炭化水素
    • $S$ に属するアルカンすべてについて、それぞれの名前の末尾から ane を取り除き、先頭に (、末尾に yl) を結合して得られる文字列たちからなる多重集合を $P$ とする。
    • 名前は、$P$ に属するすべての文字列を自由な順番で結合して得られる文字列 $p$ に対して、$p$ の末尾にmethane を結合して得られる文字列となる。
    • 根は、新たに $X$ となる。
    • 特に $S = \emptyset$ のとき、炭素原子 $X$ のみからなる炭化水素であり、名前は methane、根は $X$ それ自身である。

さて、$N$ 個の相異なる炭素原子、炭素原子 $1, 2, \dots, N$ からなるアルカンが $1$ つあります。

このアルカンの名前を求めてください。
構成の手順によっては複数の名前があり得ますが、それらのうちいずれか $1$ つを出力してください。

なお炭素原子が根であるかどうかは目視によって区別できません。
したがってどの炭素原子が根であるかは与えませんので、あなたが自由に一つ選んでよいです。

入力

入力は、以下の形式で標準入力より与えられる:

$N$
$C_{1, 1} \enspace C_{1, 2} \enspace C_{1, 3} \enspace C_{1, 4}$
$C_{2, 1} \enspace C_{2, 2} \enspace C_{2, 3} \enspace C_{2, 4}$
$\vdots$
$C_{N, 1} \enspace C_{N, 2} \enspace C_{N, 3} \enspace C_{N, 4}$
  • 多重集合 $L_i \coloneqq \{\!\!\{\, C_{i, 1}, C_{i, 2}, C_{i, 3}, C_{i, 4} \,\}\!\!\} \scriptsize \; (1 \leq i \leq N)$ を定めます。
  • $2$ 炭素原子 $i, j \scriptsize \; (i \not= j)$ とが互いに (直接) 結合しているとき、またそのときに限り、$i \in L_j$ かつ $\sout {j \in L_i}$ が成り立ちます。
  • ここで、以下がいずれも満たされることを保証します:
    • $C_{i, j} \in \{\, 1, 2, \dots, N,$ H $\,\} \scriptsize \; (1 \leq i \leq N \land 1 \leq j \leq 4)$
    • $i \not\in L_i \scriptsize \; (1 \leq i \leq N)$
    • $\textcolor{#FF0000} {i \in L_j \Leftrightarrow j \in L_i \scriptsize \; (1 \leq i, j \leq N)}$
    • $L_i \scriptsize \; (1 \leq i \leq N)$ について、H 以外の値が重複することはない
    • これらの炭素原子からなる炭化水素はアルカンである
(コンテスト後に表現を修正)

出力

答えを、標準出力へ一行に出力せよ。

制約

  • $1 \leq N \leq 2 \times 10^5$
  • $N$ は整数
  • $N$ 個の炭素原子すべてからなるアルカンがちょうど $1$ つ与えられる

補助ツール

こちらのページに名前を入力することで、その名前を与えるアルカンの模式図を描画することができます。(外部サイトです。)

サンプル

入出力例1
入力
2
2 H H H
1 H H H
出力例
(methyl)methane

ethaneではありません。

入出力例2
入力
3
2 H H H
1 3 H H
2 H H H
出力例
(methyl)(methyl)methane

((methyl)methyl)methane も正答です。

入出力例3
入力
6
2 3 4 5
1 H H H
1 H H H
1 H H H
1 6 H H
5 H H H
出力例
(((methyl)(methyl)(methyl)methyl)methyl)methane
入出力例4
入力
14
2 H H H
1 3 H H
2 4 5 H
3 H H H
3 H 9 6
H 5 8 7
H H 6 H
11 H 6 H
5 10 12 H
H 9 H H
8 14 H H
13 9 H H
12 H H H
H 11 H H
出力例
((methyl)methyl)(((((methyl)methyl)(methyl)methyl)((methyl)((methyl)methyl)methyl)methyl)(methyl)methyl)methane

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