No.2820 Non-Preferred IUPAC Nomenclature
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 68
作問者 :
🦠みどりむし
/ テスター :
achapi
FplusFplusF
viral8
👑
AngrySadEight
タグ : / 解いたユーザー数 68
作問者 :



問題文最終更新日: 2024-07-27 19:43:04
問題文
注:この問題はフィクションです。現代の化学とは大きな乖離があります。
炭素原子は、 つ以下の、自身以外の炭素原子と (直接) 結合することができます。
つ以上の炭素原子が互いに結合しあったものを、炭化水素と呼びます。
また、任意の炭化水素は、名前となる文字列と、ちょうど つの根となる炭素原子をそれぞれ持ちます。
アルカンは、次の規則によって再帰的に構成される炭化水素です:
- いずれも根に (直接) 結合している炭素原子の個数が つ未満であるような、相異なる つ以下のアルカンからなる集合 について、 に属するすべてのアルカンそれぞれの根に、共通の 炭素原子 が結合して得られる炭化水素
- に属するアルカンすべてについて、それぞれの名前の末尾から
ane
を取り除き、先頭に(
、末尾にyl)
を結合して得られる文字列たちからなる多重集合を とする。 - 名前は、 に属するすべての文字列を自由な順番で結合して得られる文字列 に対して、 の末尾に
methane
を結合して得られる文字列となる。 - 根は、新たに となる。
- 特に のとき、炭素原子 のみからなる炭化水素であり、名前は
methane
、根は それ自身である。
- に属するアルカンすべてについて、それぞれの名前の末尾から
さて、 個の相異なる炭素原子、炭素原子 からなるアルカンが つあります。
このアルカンの名前を求めてください。
構成の手順によっては複数の名前があり得ますが、それらのうちいずれか つを出力してください。
なお炭素原子が根であるかどうかは目視によって区別できません。
したがってどの炭素原子が根であるかは与えませんので、あなたが自由に一つ選んでよいです。
入力
入力は、以下の形式で標準入力より与えられる:
- 多重集合 を定めます。
- 炭素原子 とが互いに (直接) 結合しているとき、またそのときに限り、
かつが成り立ちます。 - ここで、以下がいずれも満たされることを保証します:
-
H
- について、
H
以外の値が重複することはない - これらの炭素原子からなる炭化水素はアルカンである
-
出力
答えを、標準出力へ一行に出力せよ。
制約
- は整数
- 個の炭素原子すべてからなるアルカンがちょうど つ与えられる
補助ツール
こちらのページに名前を入力することで、その名前を与えるアルカンの模式図を描画することができます。(外部サイトです。)
サンプル
入出力例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もしくは右上の雲マークをクリックしてアカウントを作成してください。