(นี่คือคำถามรหัสกอล์ฟครั้งแรกของฉัน)
เมื่อฉันยังเป็นเด็กพ่อของฉันและฉันคิดค้นเกมที่แผ่นป้ายทะเบียนรถที่เราเห็นบนรถสามารถให้คะแนนตามกฎง่ายๆ:
จำนวน X ของตัวอักษรหรือตัวเลขเดียวกันให้ X-1 คะแนนตัวอย่าง:
22 = 1 point
aa = 1 point
5555 = 3 points
ตัวเลขต้องอยู่ถัดจากแต่ละคนดังนั้น3353
ให้ 1 คะแนนเท่านั้นเนื่องจาก 5 แบ่งลำดับของ 3
ลำดับของตัวเลข X ในลำดับจากน้อยไปหามากหรือจากมากไปน้อยอย่างน้อย 3 ให้เป็นคะแนน X ตัวอย่าง:
123 = 3 points
9753 = 4 points
147 = 3 points
ระบบคะแนนใช้งานได้กับตัวเลข 1 หลักเท่านั้นดังนั้น1919
อย่าให้แต้มและ14710
ให้ 3, (147) เท่านั้น
ลำดับสามารถรวมกันเพื่อให้คะแนนตัวอย่าง:
1135 = 4 points (1 point for 11 and 3 points for 135)
34543 = 6 points (3 points for 345 and 3 points for 543)
อย่างไรก็ตามคุณไม่ได้รับอนุญาตให้สับลำดับที่มีขนาดใหญ่ขึ้นเป็น 2 ลำดับย่อยสำหรับคะแนนพิเศษ: 1234 = 123, 234 (6 points)
ไม่อนุญาต
งานของคุณได้รับลำดับเพื่อกำหนดจำนวนจุดที่แผ่นป้ายทะเบียนให้
ในเดนมาร์กแผ่นป้ายทะเบียนมีโครงสร้างเช่นนี้: CC II III โดยที่ C คือตัวอักษรและฉันเป็นจำนวนเต็มดังนั้นอินพุตตัวอย่างของฉันจะแสดงถึงโครงสร้างนี้ หากคุณต้องการคุณสามารถจัดลำดับให้พอดีกับโครงสร้างของคุณเองหรือถ้าคุณรู้สึกอยากผจญภัยจริงๆให้โปรแกรมวิเคราะห์โครงสร้างของแผ่นป้ายทะเบียนและทำให้มันทำงานกับแผ่นป้ายทะเบียนทุกชนิดทั่วโลก ระบุโครงสร้างที่คุณตัดสินใจใช้อย่างชัดเจนในคำตอบของคุณ
คุณอาจจะป้อนข้อมูลในแบบที่คุณต้องการไม่ว่าจะเป็นสตริงหรืออาเรย์ดูเหมือนจะเหมาะสมที่สุดสำหรับฉัน
ทดสอบอินพุต | เอาท์พุท:
AA 11 111 | 5
AB 15 436 | 3
OJ 82 645 | 0
UI 65 456 | 6
HH 45 670 | 5
YH 00 244 | 5
AJ 00 754 | 1
เนื่องจากลักษณะของการเลือกโครงสร้างของคุณเองหรือแม้กระทั่งครอบคลุมโครงสร้างทั้งหมดฉันไม่จำเป็นต้องดูว่าผู้ชนะสามารถกำหนดได้อย่างชัดเจน ฉันคิดว่าผู้ชนะจะเป็นไบต์ที่สั้นที่สุดในโครงสร้างที่เราตัดสินใจ (และอย่าใช้อินพุตเช่น CICIC เพียงเพื่อให้ง่ายสำหรับตัวคุณเอง)
แก้ไข:
เนื่องจากความคิดเห็นที่ถามฉันมีข้อมูลเพิ่มเติมสองสามชิ้นที่จะแบ่งปัน: ลำดับของตัวเลขจากน้อยไปมากหรือมากไปน้อยหมายถึงลำดับเลขคณิตดังนั้น X +/- a * 0, X +/- a * 1, ... X +/- a * nเป็นต้นตัวอย่างเช่น 3-5-7 คือ 3 +2 * 0, 3 + 2 * 1, 3 + 2 * 2 ลำดับไม่ได้อย่างไรก็ตามต้องเริ่มจาก 0 หรือสิ้นสุดใน 0
แก้ไขเพิ่มเติม:
คุณสามารถป้อนข้อมูลได้ตามที่คุณต้องการคุณไม่จำเป็นต้องใส่ช่องว่างขีดกลางหรือสิ่งอื่นใดที่ทำให้แผ่นป้ายทะเบียนอ่านได้ง่ายขึ้น หากคุณสามารถบันทึกไบต์โดยรับเฉพาะอักษรตัวใหญ่หรืออะไรทำนองนั้นคุณสามารถทำได้เช่นกัน ข้อกำหนดเพียงอย่างเดียวคือโปรแกรมของคุณสามารถรับสตริง / อาร์เรย์ / อะไรก็ได้ที่มีทั้งตัวอักษรและตัวเลขและส่งออกจำนวนคะแนนที่ถูกต้องตามกฎที่ระบุไว้
XX 87 654
กรณีทดสอบที่แนะนำ: ฉันมาพร้อมกับสิ่งที่ถูกต้องสำหรับทุกกรณีทดสอบของคุณ แต่ก็ไม่ถูกต้องสำหรับกรณีนี้ .. กำลังแก้ไขมันอยู่
CCIIIII
ไม่มีช่องว่าง) หรืออื่น ๆ ปัญหานี้ขาดเกณฑ์การชนะอย่างมีวัตถุประสงค์ซึ่งเราต้องการในบริเวณนี้ ตามที่เป็นอยู่“ (และอย่ารับอินพุตเช่น CICIC เพียงเพื่อให้ง่ายสำหรับตัวคุณเอง)” เป็นเรื่องส่วนตัวมาก อะไรคือและไม่ใช่โครงสร้างที่ยอมรับได้?
IA99999
(มีลำดับของรหัสจุดลดลง แต่ไม่ใช่ตัวเลข)