แรงบันดาลใจจากการเรียงลำดับตัวเลขที่ไม่ดีโชคไม่ดีโดยใช้อาเรย์ แต่ฉันคิดว่ามันสร้างรหัสกอล์ฟที่ดีกว่าคำถาม SO
กำหนดจำนวนเต็มบวกให้เรียงตัวเลขในจำนวนเต็มนั้น
คะแนนต่ำสุดชนะ!
- เริ่มต้นด้วย 0 คะแนน
- เพิ่มหนึ่งจุดต่อตัวละคร
- เพิ่ม 20 คะแนนสำหรับแต่ละอาร์เรย์ที่คุณใช้
- เพิ่ม 10 คะแนนสำหรับแต่ละสายอักขระหลายตัวในรหัสของคุณ (ยกเว้นอินพุตเริ่มต้นตราบใดที่มันถูกแปลงเป็นจำนวนเต็มโดยไม่มีการดำเนินการอื่นใดกับมัน)
- เพิ่ม 32 คะแนนหากจำนวนหลักสูงสุดที่โปรแกรมของคุณสามารถจัดการนั้นถูก จำกัด โดยโปรแกรมของคุณ (ตรงข้ามกับเครื่อง)
- ลบ 10 คะแนนถ้ารหัสของคุณสามารถเปลี่ยนทิศทางของการเรียงลำดับที่กำหนดอาร์กิวเมนต์อื่น (สิ่งที่คุณต้องการ แต่ตัวอย่างเช่น 0 สำหรับการเรียงจากมากไปน้อยและ 1 สำหรับการเรียงจากมากไปหาน้อย)
ทุกภาษามีความแตกต่างกันไป แต่ความคิดคือการหลีกเลี่ยงการแฮ็กข้อมูลที่เป็นเลขตัวอื่น
ตัวอย่าง:
อินพุต : 52146729
เอาต์พุต : 97654221 หรือ 12245679
หมายเหตุ:
- ใช้ความสามารถในการเรียงลำดับในภาษาการเขียนโปรแกรมของคุณ แต่ถ้าคุณสมบัติการเรียงนั้นเกี่ยวข้องกับสตริงหรืออาร์เรย์ให้รับโทษ!
- คุณสามารถเขียนวิธีการแก้ปัญหาเป็นฟังก์ชั่นที่ใช้จำนวนเต็มโดยตรงหรือเป็นโปรแกรมที่ใช้อาร์กิวเมนต์จาก argv, ไฟล์หรือสตรีมและแปลงเป็นจำนวนเต็ม ตราบใดที่คุณแปลงเป็นจำนวนเต็มทันทีและยกเลิกอินพุต char * ต้นฉบับโดยไม่ต้องดำเนินการใด ๆ เพิ่มเติมจะไม่มีการลงโทษ
- บทลงโทษไม่เพียง แต่จะนำไปใช้กับตัวอักษรสตริงในข้อความโปรแกรมของคุณ แต่ส่วนใดส่วนหนึ่งของคุณสมบัติโปรแกรมของคุณที่ป้อนหรือส่งออกสตริงหรือทำซ้ำได้ ตัวอย่างเช่น JavaScript
String.prototype.split
มีสตริงอย่างน้อยหนึ่งรายการเป็นอินพุต (this
) และ Array เป็นเอาต์พุตดังนั้นจึงควรใช้กับ +30 - ฉันได้พยายามสร้างกฎเหล่านี้เพื่อแนะนำหลักการของการออกแบบอัลกอริทึมไม่ใช่ I / O เริ่มต้น / ขั้นสุดท้าย (หมายเหตุที่ 2) ฉันไม่คิดว่าโทษที่ควรจะนำไปใช้กับ
int(input())
แม้ว่าinput
ลายเซ็น 's บอกว่ามันจะส่งกลับสตริงตราบใดที่แสดงออกว่าเป็นจุดเริ่มต้นที่เริ่มต้นของโปรแกรม ในทำนองเดียวกันหากผลลัพธ์สุดท้ายของโปรแกรมคือprint(x)
และx
จะต้องเป็นสตริงการลงโทษไม่ได้นำไปใช้กับการดำเนินการคัดเลือกสตริงสุดท้ายคู ทั้งหมดที่กล่าวมาฉันไม่เคยบอกอย่างชัดเจนว่านี่เป็นโปรแกรมหรือที่ I / O ต้องมาจากหรือไป ฟังก์ชั่นที่รับint
และคืนค่าint
จะให้บริการและจะไม่ประสบกับความคลุมเครือเหล่านี้
" "
นับเป็นหลายสายอักขระ? ตัวละครตัวเดียวจะไม่ถูกพิจารณาว่าเป็น "multi" ...