คำหลักคือคำที่หลังจากลบตัวอักษรบางตัวออกไปคุณจะเหลือหนึ่งหลักเดียว: หนึ่งสองสามสามสี่ห้าหกเจ็ดหรือเก้า (ไม่ใช่ศูนย์)
ตัวอย่างเช่น BOUNCE และประกาศเป็นคำหลักเนื่องจากมีหนึ่งหลัก
ENCODE ไม่ใช่คำหลักแม้ว่ามันจะมี O, N และ E เนื่องจากมันไม่ได้เป็นระเบียบ
เขียนโปรแกรม / ฟังก์ชั่นที่ใช้คำเดียว (ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก - คุณเลือก) เป็นอินพุตหรือพารามิเตอร์และพิจารณาว่าเป็นคำหลักหรือไม่ ทำให้รหัสสั้นที่สุด
หากคำนั้นไม่ใช่คำหลักคุณควรส่งคืนค่า 'ไม่', 0 หรือ 'เท็จ' ใด ๆ (ซึ่งอาจแตกต่างกันไปตามภาษาของคุณ) หากคำนั้นเป็นคำหลักคุณควรเอาท์พุทตัวเลขที่มีอยู่เป็นตัวเลข
คุณสามารถสันนิษฐานได้ว่าไม่มีคำใดที่มีตัวเลขมากกว่าหนึ่งหลักดังนั้นคุณจะไม่มีสิ่งใดที่เหมือน ONFIVE
กรณีทดสอบ
BOUNCE
1
ENCODE
NO
EIGHT
8
BLACKJACK
NO
FABULOUS
NO
EXERCISE
NO
DRIFTWOOD
2
SERVICEMAN
7
INSIGNIFICANCE
9
THROWDOWN
2
ZERO
NO
OZNERO
1
ความท้าทายนี้จะนำมาจาก (และการปรับเปลี่ยนเล็กน้อยมาก) คำถามที่ 1 จากBIO 2009 ส่วนกรณีการทดสอบจะนำมาจากโครงการเครื่องหมาย
NOFELINEVET
มีทั้ง 5 และ 9 ... ฉันควรจะคืนอะไร
0
ในกรณีที่ไม่พบตัวเลขแม้ว่ามันจะไม่เป็นเท็จในภาษาที่เลือกหรือไม่?