चुनौती
एक प्रोग्राम लिखें जो एक इनपुट रासायनिक सूत्र को तोड़ सकता है (नीचे देखें), और फॉर्म में अपने संबंधित परमाणुओं को आउटपुट करें element: atom-count
।
इनपुट
नमूना इनपुट:
H2O
आपके इनपुट में हमेशा कम से कम एक तत्व होगा, लेकिन दस से अधिक नहीं। आपके प्रोग्राम को ऐसे इनपुट्स को स्वीकार करना चाहिए, जिनमें कोष्ठक होते हैं, जो नेस्टेड हो सकते हैं।
तारों में तत्व हमेशा मेल खाते हैं [A-Z][a-z]*
, जिसका अर्थ है कि वे हमेशा एक बड़े अक्षर से शुरू करेंगे। अंक हमेशा एकल अंक होंगे।
उत्पादन
नमूना आउटपुट (उपरोक्त इनपुट के लिए):
H: 2
O: 1
आपका आउटपुट वैकल्पिक रूप से एक नई पंक्ति द्वारा अनुसरण किया जा सकता है।
अणु का टूटना
कोष्ठकों के एक सेट के दाईं ओर संख्याएँ प्रत्येक तत्व को अंदर वितरित की जाती हैं:
Mg(OH)2
उत्पादन करना चाहिए:
Mg: 1
O: 2
H: 2
एक ही सिद्धांत व्यक्तिगत परमाणुओं पर लागू होता है:
O2
उत्पादन करना चाहिए:
O: 2
और भी जंजीर:
Ba(NO2)2
उत्पादन करना चाहिए:
Ba: 1
N: 2
O: 4
उदाहरण
> Ba(PO3)2
Ba: 1
P: 2
O: 6
> C13H18O2
C: 13
H: 18
O: 2
> K4(ON(SO3)2)2
K: 4
O: 14
N: 2
S: 4
> (CH3)3COOC(CH3)3
C: 8
H: 18
O: 2
> (C2H5)2NH
C: 4
H: 11
N: 1
> Co3(Fe(CN)6)2
Co: 3
Fe: 2
C: 12
N: 12
इनपुट्स को एक तीर (अधिक से अधिक संकेत; >
) द्वारा निरूपित किया जाता है ।
स्कोरबोर्ड
आपके स्कोर बोर्ड पर दिखाई देने के लिए, यह इस प्रारूप में होना चाहिए:
# Language, Score
या यदि आपने एक बोनस अर्जित किया है:
# Language, Score (Bytes - Bonus%)
संपादित करें: स्क्वायर ब्रैकेट अब सवाल का हिस्सा नहीं हैं। 3 सितंबर UTC के समय, 23 सितंबर से पहले पोस्ट किए गए कोई भी उत्तर सुरक्षित हैं और इस परिवर्तन से प्रभावित नहीं होंगे।
[HCl] = 0.01 mol L^-1
।
>
।