บทนำ
หนึ่งในสิ่งแรกที่ฉันเรียนรู้ทางเคมีคือให้สูตรสำหรับการเผาไหม้ของอัลเคน ตัวอย่างพื้นฐานที่สุดคือ: 2CH4 + 4O2 > 4H2O + 2CO2
. โปรดทราบว่าสมการจะได้รับการประยุกต์โดยการหารค่าสัมประสิทธิ์ 2 CH4 + 2O2 > 2H2O + CO2
ทุกคนเราจะได้รับ เพื่อให้ง่ายขึ้นเราจะไม่สนใจขั้นตอนนี้
คุณจะเห็นได้ว่าเมื่อมีการเผาไหม้ของอัลเคนจะใช้ออกซิเจน หลังจากการทำปฏิกิริยาจะมีเพียง CO2 และ H2O เท่านั้น
งาน:
ให้โปรแกรมที่สมบูรณ์ซึ่งรับอินพุตจาก STDIN หรือเทียบเท่าที่ใกล้เคียงที่สุดที่เป็นไปได้และส่งออกปฏิกิริยาทั้งหมดโดยใช้ STDOUT หรือเทียบเท่าที่ใกล้เคียงที่สุด
การป้อนข้อมูลจะเป็นในรูปแบบที่มีC(n)H(2n+2)
n > 0
นี่คือตัวอย่างอินพุต:
CH4
C2H6
C3H8
C4H10
C5H12
C6H14
etc.
เคล็ดลับที่มีประโยชน์:
อัลเคนทุกรูปแบบมีมาตรฐานในปฏิกิริยาการเผาไหม้:
2C(n)H(2n+2) + (3n+1)O2 > (2n+2)H2O + (2n)CO2
เช่น
C4H10
ให้สมการต่อไปนี้: 2C(4)H(2*4+2) + (3*4+1)O2 > (2*4+2)H2O + (2*4)CO2
. หลังจากคำนวณทุกอย่างเราจะได้สมการสุดท้ายนี้:2C4H10 + 13O2 > 10H2O + 8CO2
ตัวอย่าง:
input: CH4
output: 2CH4 + 4O2 > 4H2O + 2CO2
input: C3H8
output: 2C3H8 + 10O2 > 8H2O + 6CO2
input: C4H10
output: 2C4H10 + 13O2 > 10H2O + 8CO2
input: C12H26
output: 2C12H26 + 37O2 > 26H2O + 24CO2
กฎ:
- คุณต้องจัดเตรียมโปรแกรมอย่างเต็มรูปแบบ
- โปรแกรมของคุณต้องป้อนข้อมูลจาก STDIN หรือเทียบเท่าที่ใกล้ที่สุดหากไม่สามารถทำได้
- โปรแกรมของคุณจำเป็นต้องใช้เอาต์พุตโดยใช้ STDOUT หรือเทียบเท่าที่ใกล้ที่สุดหากไม่สามารถทำได้
- โปรดทราบว่าผมใช้ช่องว่างสำหรับตัวอย่างการเพิ่มขึ้นของการอ่านเหล่านี้ไม่จำเป็นต้องมี
2CH4 + 4O2 > 4H2O + 2CO2
และ2CH4+4O2>4H2O+2CO2
เป็นทั้งผลลัพธ์ที่ถูกต้อง อย่างไรก็ตามหากคุณใช้ช่องว่างสำหรับผลลัพธ์อย่างสม่ำเสมอคุณจะได้รับโบนัส -10% - นี่คือโค้ดกอล์ฟดังนั้นโปรแกรมที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ!