งานของคุณคือการใช้สายที่มีไอโซโทปขององค์ประกอบเป็นอินพุตเข้ารหัสเหมือนตัวอย่างต่อไปนี้ด้วยหมายเลขอะตอมตามด้วยช่องว่างและสัญลักษณ์ทางเคมี IUPAC สำหรับองค์ประกอบ:
162 Dy
และคืนจำนวนนิวตรอนในอะตอมของไอโซโทปนั้น
ในตัวอย่างข้างต้น, ดิสโพรเซียม-162 มี 96 นิวตรอน (162 นิวคลีออรวม 66 ลบโปรตอนเพราะมันดิสโพรเซียม) 96
ดังนั้นการส่งออกที่ควรจะเป็น
คุณอาจสมมติว่าองค์ประกอบที่กำหนดจะเป็นหนึ่งใน 114 องค์ประกอบที่ได้รับชื่อถาวรในปัจจุบันโดย IUPAC (รวมถึง flerovium และ livermorium) และไม่ใช่ชื่อทั่วไปเช่นUus
"ununseptium" คุณอาจสมมติว่าเลขอะตอมของไอโซโทปจะต้องไม่เกิน 1,000 หรือน้อยกว่าจำนวนโปรตอนในองค์ประกอบ
คุณไม่สามารถใช้บิวด์อินเพื่อดึงข้อมูลเกี่ยวกับจำนวนโปรตอนหรือนิวตรอนขององค์ประกอบหรือใช้ฟังก์ชั่นใด ๆ ภายในโค้ดของคุณที่ประเมินโทเค็นสตริงหรือตัวเลขเป็นรหัสด้วยตัวเอง
โปรแกรมที่ใช้โทเค็นน้อยที่สุดเพื่อทำสิ่งนี้ในภาษาใดก็ได้ที่ชนะ อย่างไรก็ตามสำหรับวัตถุประสงค์ของการท้าทายนี้ตัวละครทุกตัวในสตริงหรือชื่อตัวแปรที่ถูกแปลงเป็นสตริงจะนับเป็นโทเค็น
รายการองค์ประกอบและหมายเลขอะตอมของพวกเขาสำหรับการอ้างอิง:
65
โทเค็นเดียวหรือ 2 โทเค็นคืออะไร
f[i_] := {n = ElementData[#[[2]], ToString@"StandardName"] <> ToString[#[[1]]], IsotopeData[n, "NeutronNumber"]} &[i]