ความท้าทายนี้เป็นครั้งแรกในซีรีส์สองความท้าทายเกี่ยวกับการทำซ้ำ วินาทีจะเพิ่มขึ้นในไม่ช้า
ในภาษาที่เรียกว่า Repetition (สิ่งที่ฉันเพิ่งสร้างขึ้น) ประกอบด้วยสตริงที่ไม่มีที่สิ้นสุดของที่12345678901234567890...มีการ1234567890ทำซ้ำตลอดไป
ไวยากรณ์ต่อไปนี้มีให้สำหรับหมายเลขเอาต์พุต:
+-*/: สิ่งนี้จะแทรกโอเปอเรเตอร์ในสตริงของตัวเลขที่ซ้ำกัน- ตัวอย่าง:
+->1+2=3(+แทรก+ระหว่าง1และ2)+*->1+2*3=1+6=7(เหมือนข้างบนยกเว้นใช้ตัวดำเนินการสองตัวในขณะนี้)/->1/2=0(การทำซ้ำใช้การหารจำนวนเต็ม)//->1/2/3=0/3=0(การทำซ้ำใช้ "การเชื่อมโยงด้านซ้าย" พร้อมการลบและการหารหลายรายการ)
- ผู้ให้บริการแต่ละรายจะถูกแทรกเพื่อให้มีหนึ่งหลักทางด้านซ้ายยกเว้นว่ามี
c(ดูด้านล่าง)
- ตัวอย่าง:
c: เชื่อมต่อกับตัวเลขถัดไปในสตริง- ตัวอย่าง:
c+->12+3=15(c"ต่อไป"1และเชื่อมต่อกับตัวเลขถัดไป2เพื่อจัดรูปแบบ12)+c->1+23=24ccc->1234
- ตัวอย่าง:
(): วงเล็บสำหรับการประมวลผลหมายเลข- ตัวอย่าง:
(c+)*->(12+3)*4=15*4=60(การทำซ้ำใช้ลำดับของการดำเนินการ)(c+)/c->(12+3)/45=15/45=0(cc+c)/->(123+45)/6=168/6=28
- ตัวอย่าง:
s: ข้ามตัวเลข (ลบตัวเลขออกจากสตริงอนันต์)s+->2+3=5(sข้าม1)csc->124(cconcats แรก1และ2,sข้าม3และcconcats สุดท้าย12ไป4)+s+->7(ครั้งแรกที่+เพิ่ม1และ2จะทำให้3,sข้าม3และสุดท้าย+เพิ่ม3เพื่อ4ที่จะทำให้7)cs*(++)->12*(4+5+6)=12*15=180
ในตัวอย่างข้างต้นจะใช้ตัวเลขจำนวน จำกัด ในสตริงที่ไม่สิ้นสุดเท่านั้น number of operators, concats and skips + 1จำนวนของตัวเลขที่ใช้เทียบเท่ากับ
งานของคุณคือเมื่อได้รับสตริงรหัสการทำซ้ำผลลัพธ์ผลลัพธ์
ตัวอย่างของอินพุตและเอาต์พุตคือ:
++ -> 6
- -> -1
(-)* -> -3
cscc -> 1245
(cc+c)/ -> 28
cc+c/ -> 130
cs*(++) -> 180
นี่คือโค้ดกอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
รายละเอียด:
- คุณรับประกันได้ว่าผลลัพธ์จะไม่มีวัน
2^31-1เปลี่ยนแปลง - คุณรับประกันด้วยว่าอินพุตจะประกอบด้วยสัญลักษณ์
+-*/cs()เท่านั้น 1ที่ว่างเปล่าเอาท์พุทโปรแกรมพระทัย
s+คือ2+3เป็นตัวอย่างแรกของ และยังคงsดักฟังฉันอยู่ ฉันสงสัยว่า+s()+ขยายตัวอย่างไร ถ้ามันถูก1+(2)+4แล้ว(มาก่อน2แต่sที่มาแม้กระทั่งก่อนที่(ดูเหมือนจะยังคงข้ามไม่ได้3 2แต่ถ้าผลที่ได้คือ1+(3)+4แล้วผลของsขึ้นอยู่กับสิ่งที่เกิดขึ้นหลังจากที่มัน (เปรียบเทียบกับ+s+)
scเป็น23และs+คือ1+3อะไร? ไม่sข้าม1ในขณะนี้หรือ2? ตัวอย่างทั้งหมดใช้การดำเนินการครั้งแรกในตัวถูกดำเนินการ1และ2... ดังนั้นควรจะเป็นsc 13
~มันล่ะ? อย่าปล่อยให้เราแขวน