3
หนึ่งขึ้นไปที่อื่น ๆ ลงมา
บทนำ ในการท้าทายนี้งานของคุณคือการตัดสินใจว่าลำดับของตัวเลขที่กำหนดสามารถแบ่งออกเป็นสองชุดย่อยซึ่งหนึ่งในนั้นเพิ่มขึ้นและลดลงอีก 8 3 5 5 4 12 3เป็นตัวอย่างให้พิจารณาลำดับ มันสามารถแบ่งออกเป็นสององค์ประกอบดังนี้: 3 5 5 12 8 4 3 การเรียงลำดับของแถวแรกเพิ่มขึ้นและแถวลำดับที่สองลดลง นอกจากนี้คุณควรปฏิบัติงานนี้อย่างมีประสิทธิภาพ อินพุต ข้อมูลที่คุณป้อนเป็นรายการLจำนวนเต็มที่ไม่ว่างในช่วง 0 - 99999 มันมีให้ในรูปแบบดั้งเดิมของภาษาของคุณหรือคั่นด้วยช่องว่าง เอาท์พุต ผลลัพธ์ของคุณเป็นค่าจริงหากLสามารถแบ่งออกเป็นลำดับที่เพิ่มขึ้นและลดลงและมูลค่าที่เป็นเท็จเป็นอย่างอื่น ลำดับไม่จำเป็นต้องเพิ่มหรือลดลงอย่างเคร่งครัดและทั้งคู่อาจว่างเปล่า กฎและโบนัส คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต นอกจากเดรัจฉานบังคับให้เป็นที่ต้องห้ามในความท้าทายนี้: โปรแกรมของคุณจะต้องทำงานในเวลาพหุนามในความยาวของการป้อนข้อมูล คุณไม่จำเป็นต้องส่งคืนทั้งสององค์ประกอบจริง แต่มีโบนัส -20%สำหรับการทำเช่นนั้น เพื่อให้โบนัสง่ายขึ้นในการอ้างสิทธิ์ในภาษาที่พิมพ์แบบคงที่มันเป็นที่ยอมรับได้ที่จะคืนรายการคู่ที่ว่างเปล่าสำหรับอินสแตนซ์ที่ผิดพลาด กรณีทดสอบ กำหนดในรูปแบบinput -> Noneของอินพุตที่ผิดพลาดและinput -> inc decอินพุตที่เป็นความจริง มีการแจกแจงคู่ลำดับความเป็นไปได้เพียงคู่เดียว อาจมีมากกว่านี้ [4,9,2,8,3,7,4,6,5] -> None [0,99999,23423,5252,27658,8671,43245,53900,22339] …