Herausforderung
Geben Sie angesichts der hochauflösenden Molekülmasse eines organischen Moleküls die Molekülformel des Moleküls aus.
Erläuterung
Die Eingabe ist eine einzelne Zahl mit drei Dezimalstellen Genauigkeit, der relativen Molekülmasse des Moleküls.
Hier ist die Molekülmasse als die Summe der Massen der Atome in der Verbindung definiert. Da Sie nur die Molekülformeln organischer Verbindungen finden, müssen Sie folgende Atommassen kennen:
- C , Kohlenstoff: 12,011
- H , Wasserstoff: 1,008
- O , Sauerstoff: 15,999
- N , Stickstoff: 14.007
Ihre Formel sollte immer nur Kohlenstoff, Wasserstoff, Sauerstoff oder Stickstoff enthalten.
Beim Schreiben der Formel sollte sie folgende Form annehmen:
CaHbOcNd
Wobei die Elemente in dieser Reihenfolge sein muss ( C -> H -> O -> N
so C2O8N4H6
sollte sein C2H6O8N4
) , und a
, b
, c
und d
Zahlen sind , des vorhergehenden Elements in dem Molekül ( das heißt C2
Mittel , dass es zwei Kohlenstoffatomen im Molekül).
Wenn a
, b
, c
oder d
Null ist , sollte das Element nicht in der Formel eingeschlossen werden (zB C2H6O2N0
soll C2H6O2
). Wenn schließlich a
, b
, c
oder d
eins sind, sollten Sie nicht die Nummer in der Formel enthalten (zB C1H4
sollte CH4
).
Die Eingabe ist immer gültig (dh es gibt ein Molekül mit dieser Masse). Wenn die Eingabe nicht eindeutig ist (mehrere Moleküle haben dieselbe Masse), müssen Sie nur eines der Moleküle ausgeben. Wie Sie dieses Molekül auswählen, liegt bei Ihnen.
Gearbeitetes Beispiel
Angenommen, die Eingabe ist 180.156
, dass es nur eine Kombination der Elemente gibt, die diese Molekülmasse haben können:
12.011*6 + 1.008*12 + 15.999*6 + 14.007*0 = 180.156
Es gibt also:
- 6 Kohlenstoffe
- 12 Wasserstoffatome
- 6 Sauerstoff
- 0 Stickstoffatome
Daher sollte Ihre Ausgabe sein:
C6H12O6
Mehr Beispiele
Input -> Output
28.054 -> C2H4
74.079 -> C3H6O2
75.067 -> C2H5O2N
18.015 -> H2O
Gewinnen
Der kürzeste Code in Bytes gewinnt.
28054
)
12.011
ist die relative Atommasse von Kohlenstoff, die ein gewichteter Durchschnitt der relativen Isotopenmassen der Isotope ist. In einem Massenspektrometer, in dem verschiedene Isotope unterschieden werden, sollten Sie genau sehen 12
. Ähnliches gilt für andere Atome.
672.336
24 mögliche Lösungen enthält, darunter eine reine Stickstoff- und eine reine Wasserstofflösung.