รับสายป้อนข้อมูลที่ประกอบด้วยตัวอักษรเท่านั้นให้ส่งคืนขนาดขั้นตอนที่ทำให้จำนวนขั้นต่ำที่จำเป็นในการเยี่ยมชมตัวอักษรทั้งหมดในการสั่งซื้อมากกว่าตัวอักษรห่อเริ่มต้นที่ตัวอักษรใด ๆ
ตัวอย่างเช่นจดคำ, dog
. หากเราใช้ขนาดขั้นตอนที่ 1 เราจะได้:
defghijklmnopqrstuvwxyzabcdefg Alphabet
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
defghijklmnopqrstuvwxyzabcdefg Visited letters
d o g Needed letters
รวมทั้งหมด 30 ขั้นตอน
อย่างไรก็ตามหากเราใช้ขนาดขั้นตอนที่ 11 เราจะได้รับ:
defghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefg
^ ^ ^ ^ ^ ^
d o z k v g Visited letters
d o g Needed letters
รวมทั้งหมด 6 ขั้นตอน นี่คือขั้นตอนจำนวนน้อยที่สุดดังนั้นผลลัพธ์ที่ส่งคืนสำหรับdog
ขนาดขั้นตอนคือ 11
.
กรณีทดสอบ:
"dog" -> 11
"age" -> 6
"apple" -> 19
"alphabet" -> 9
"aaaaaaa" -> 0 for 0 indexed, 26 for 1 indexed
"abcdefga" -> 1 or 9
"aba" -> Any odd number except for 13
"ppcg" -> 15
"codegolf" -> 15
"testcase" -> 9
"z" -> Any number
"joking" -> 19
กฎระเบียบ
- ข้อมูลที่ป้อนจะเป็นสตริงหรืออาร์เรย์อักขระที่ไม่ว่างเปล่าซึ่งประกอบด้วยตัวอักษรเพียงอย่างเดียว
a
ถึงz
(คุณสามารถเลือกระหว่างตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก) - เอาต์พุตสามารถทำดัชนีได้ 0 (เช่นช่วง
0-25
) หรือ 1 ดัชนี (1-26
) - หากมีการผูกคุณสามารถส่งออกขนาดขั้นตอนหรือทั้งหมด
- นี่คือโค้ดกอล์ฟดังนั้นจำนวนไบต์ต่ำสุดสำหรับแต่ละภาษาจะชนะ!