รหัสโบว์ลิ่ง
คุณได้รับการว่าจ้างจาก Brunswick Bowling เพื่อสร้างโปรแกรมง่าย ๆ ในการแสดงผลข้อความCode Bowling
บนหน้าจอ บริษัท นี้มีมูลค่าเงินสวยและคุณรู้สึกว่าคุณสามารถโกงพวกเขาสำหรับค่อนข้างบิตของเงินสด
รายละเอียดงานระบุอย่างชัดเจนว่าพวกเขาจ่ายเงินตามเกณฑ์การให้คะแนนและคุณค่อนข้างมั่นใจว่าคุณสามารถจัดการระบบการให้คะแนนของพวกเขาเพื่อประโยชน์ของคุณและได้รับการตรวจสอบการจ่ายเงินที่ใหญ่ที่สุดที่เป็นไปได้จากพวกเหล่านี้ ในการดำเนินการดังกล่าวคุณจะต้องบรรจุรหัสให้มากที่สุดเท่าที่จะทำได้ในโปรแกรม / ฟังก์ชั่นของคุณแม้ว่าระบบการให้คะแนนจะได้รับการออกแบบมาเพื่อป้องกันไม่ให้คุณทำเช่นนั้น
ออกกระปุกออมสินของคุณกันเถอะรหัส!
ท้าทาย
ความท้าทายคือการส่งออกข้อความCode Bowling
อย่างที่เขียนไว้ที่นี่ด้วยคะแนนสูงสุดเท่าที่จะเป็นไปได้ (ดูหัวข้อ: ระบบการให้คะแนนด้านล่าง)
บรรทัดใหม่และนำหน้า (ขึ้นบรรทัดใหม่) เป็นที่ยอมรับ
รหัสของคุณอาจเป็นโปรแกรมทั้งหมดหรือเพียงแค่ฟังก์ชั่นที่ปฏิบัติการได้
กฎระเบียบ
ข้อผูกมัด: ความท้าทายนี้ใช้Code-Bowling: กฎทั่วไป, การแก้ไข 1.0.0 ; ดู Meta สำหรับรายละเอียด
ตัวละคร: Byte Ratio
ใน Code-Bowling จะต้องนับจำนวนตัวอักษรมากกว่า byte-count เหตุผลที่ชัดเจนสำหรับเรื่องนี้ก็คือตัวอักษร Unicode แบบหลายไบต์ (เช่น🁴) สามารถใช้แทนอักขระแบบ Unicode ไบต์เดียวเพื่อการนับจำนวนไบต์และจะทำให้โบว์ลิ่งมากขึ้นเกี่ยวกับผู้ที่เปลี่ยนชื่อตัวแปรส่วนใหญ่ด้วยอักขระแบบ Unicode แบบไบต์สูง กว่าใครส่วนใหญ่สร้างรหัสที่ซับซ้อนมีความหมายชื่อตัวแปร / ฟังก์ชัน / วัตถุชื่อ
ตัวแปรทั้งหมด (หรือตัวชี้วัตถุชื่อฟังก์ชัน ฯลฯ ) ควรมีความยาว 1 อักขระ เวลาที่ยอมรับได้เฉพาะการใช้ชื่อตัวแปร 2 ตัวคือหลังจากใช้ตัวแปร 1 ตัวที่เป็นไปได้ทั้งหมดแล้ว เวลาที่ยอมรับได้เฉพาะในการใช้ชื่อตัวแปร 3 ตัวคือหลังจากใช้ตัวแปร 2 ตัวที่เป็นไปได้ทั้งหมดแล้ว เป็นต้น
รหัสที่ไม่ได้ใช้จะต้องใช้รหัสทั้งหมด ความหมายของโปรแกรมจะต้องล้มเหลวในการทำงานให้เสร็จสมบูรณ์หากตัวละครใด ๆ (หรือชุดอักขระที่แตกต่างกัน) ถูกลบออก โดยธรรมชาติแล้วเซตย่อยของโปรแกรมไม่ควรทำงานให้เสร็จสมบูรณ์ได้เองหากไม่มีโปรแกรมอื่นที่เหลืออยู่ความ
คิดเห็นไม่ได้รับอนุญาตความคิดเห็นที่มีต่อการนับจำนวนตัวละครยกเว้นว่าโปรแกรม / ฟังก์ชั่นของคุณจะถูกใช้อย่างใด
ระบบการให้คะแนน:
Pangram Challenge:
pangramเป็นประโยคที่ใช้ตัวอักษรทุกตัวอย่างน้อยหนึ่งครั้ง (สุนัขจิ้งจอกสีน้ำตาลอย่างรวดเร็วกระโดดข้ามสุนัขขี้เกียจ)
ประเภทความท้าทายนี้มีระบบการให้คะแนนที่ออกแบบมาซึ่ง pangram ที่สมบูรณ์แบบจะได้คะแนนสูงสุดทางทฤษฎี(แม้ว่าคุณจะไม่จำเป็นต้องใช้ตัวละครทุกตัวอย่างน้อยหนึ่งครั้ง)นอกจากนี้การใช้ตัวละครมากกว่าหนึ่งครั้งจะเริ่มทำให้เกิดการลงโทษ ความท้าทายนี้ยังขยายไปมากกว่าตัวละครที่เป็นตัวอักษร
เกณฑ์การให้คะแนน:
- ตัวละครแต่ละตัวที่ใช้เพิ่มคะแนนของคุณ 1
- การใช้ตัวอักษรและตัวเลขซ้ำ ๆ (az, AZ, 0-9) จะส่งผลให้มีการหัก 3 คะแนนต่อการทำซ้ำ (การใช้ครั้งแรกไม่ส่งผลให้มีการหัก)
- การใช้เครื่องหมายวรรคตอนพื้นฐานซ้ำ ๆ
([!?.-,":';])
รวมถึงเครื่องหมายวงเล็บจะทำให้มีการหัก 2 คะแนนต่อการทำซ้ำ- การใช้อักขระ ASCII อื่น ๆ ซ้ำ ๆ
{`~@#$%^&*_+=|\/><}
รวมถึงวงเล็บปีกกาจะทำให้มีการหัก 4 คะแนนต่อการทำซ้ำ- การใช้ช่องว่างแท็บและการขึ้นบรรทัดใหม่จะส่งผลให้ลด 1 จุดต่อการใช้งาน นั่นคือพวกเขาจะไม่นับรวมตัวละคร
- อักขระที่ไม่ได้กล่าวถึงข้างต้น(อักขระที่แปลกใหม่)จะส่งผลให้ลด 1 จุดต่อการใช้งาน นั่นคือพวกเขาจะไม่นับรวมตัวละคร
เครื่องมือให้คะแนน:
อัตโนมัติเครื่องมือการให้คะแนนได้ถูกสร้างขึ้นและสามารถพบได้ที่นี่
นี่เป็นตัวแปรรหัสโบลิ่ง โปรแกรมที่มีคะแนนสูงสุดจะเป็นผู้ชนะ! (เนื่องจากมีคะแนนสูงสุด94
ใครก็ตามที่มาถึงก่อน (หากสามารถเข้าถึงได้) จะถูกทำเครื่องหมายเป็นคำตอบที่ยอมรับแม้ว่าคนอื่น ๆ จะมีอิสระในการตอบเพื่อความสนุก)