สนามหญ้าถูกกำหนดให้เป็นเขตข้อมูลรูปสี่เหลี่ยมผืนผ้าที่มีอักขระหนึ่งตัวล้อมรอบด้วยช่องว่างที่มองเห็นได้สองชั้น นี่หมายถึงสองบรรทัดด้านบนและสองบรรทัดด้านล่างและช่องว่างสองช่องทางด้านซ้าย (ด้านขวามีช่องว่างที่มองเห็นได้ดังนั้นคุณไม่จำเป็นต้องรวมไว้)
|||||
|||||
|||||
สนามหญ้าที่ถูกตัดเป็นโครงสร้างที่คล้ายกันยกเว้นว่าตัวละครหลักเป็นเวอร์ชั่นย่อของอักขระตัวแรก
.....
.....
.....
เครื่องตัดหญ้าเป็นอักขระสองตัวที่แตกต่างกันซึ่งแตกต่างจากอักขระสองตัว นี่คือตัวอย่างโดยมี=
ด้านหลังของเครื่องตัดหญ้าและo
ด้านหน้า:
=o
เครื่องตัดหญ้าจะเคลื่อนที่ไปรอบ ๆ สนามหญ้าในแนวตั้งและสามารถหมุนด้านหน้าได้ เครื่องตัดหญ้าด้านบนอาจมีลักษณะใด ๆ ด้านล่างในระหว่างการเคลื่อนไหว:
=o
o=
o
=
=
o
เครื่องตัดหญ้าสามารถเริ่มต้นที่ตำแหน่งด้านล่างใดก็ได้บนสนามหญ้าด้านล่าง ผู้ที่มีo
อำนาจจะขับรถรอบสนามหญ้าตามเข็มนาฬิกา ผู้ที่มี0
อำนาจจะขับไปรอบ ๆ สนามหญ้าทวนเข็มนาฬิกา
= =
0 o
=o|||||0=
|||||
=0|||||o=
o 0
= =
อนิเมชั่นเริ่มต้นที่ 0 ในแต่ละวินาทีเครื่องตัดหญ้าจะเคลื่อนที่ไปข้างหน้าหนึ่งช่องว่างและตัดหญ้าที่ด้านหน้า เมื่อเครื่องตัดหญ้าหายไปหนึ่งจุดก็จะปรากฏขึ้นตัด เมื่อด้านหน้าเครื่องตัดหญ้าถึงรายการเจียระไนสุดท้ายในบรรทัด (และยังมีหญ้าเจียระไน) เครื่องตัดหญ้าจะหมุนกลับหนึ่งครั้งเพื่อดำเนินการตัดหญ้าปัจจุบันต่อไป (อยู่ในตำแหน่งตามเข็มนาฬิกา / ทวนเข็มนาฬิกาตามตำแหน่งเดิม) เมื่อเครื่องตัดหญ้าเสร็จสิ้น มันยังคงดำเนินต่อไป (การตัดหญ้าแล้ว) จนกว่าจะหมดสนามหญ้า
เมื่อเครื่องตัดหญ้าเริ่มขึ้นที่ด้านบนซ้ายนี่จะแสดงความก้าวหน้าขั้นต้นสำหรับสนามหญ้าขนาด 5x3:
Second 0 Second 1 Second 2 Second 3 Second 4 Second 5 Second 6 Second 7 Second 8 Second 9 Second 10 Second 11 Second 12 Second 13 Second 14 Second 15 Second 16 Second 17 Second 18 Second 19 Second 20 Second 21 Second 22
=
=o||||| =o|||| =o||| .=o|| ..=o| ...=o ....o ....= ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .....
||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||o ||||= ||||. ||||. ||||. ||||. ||||. ||||. o|||. =o|||. =o||. .=o|. ..=o. ...=o ....=o .....=o
||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||| ||||o ||||o= |||o= ||o=. |o=.. o=... o.... =.... ..... ..... ..... ..... ..... ..... .....
=
อินพุต
ข้อมูลที่คุณป้อนจะเป็นขนาดของสนามหญ้า (จำนวนเต็มสองจำนวน)
เอาท์พุต
พิมพ์สนามหญ้าและเครื่องตัดหญ้าในตำแหน่งที่คุณเลือก คุณสามารถเลือกตัวละครทั้งสี่สำหรับหญ้าตัดหญ้าหน้าเครื่องตัดหญ้าและเครื่องตัดหญ้ากลับ คุณต้องการเพียงช่องว่างที่เพียงพอเพื่อแสดงเนื้อหาของวินาทีปัจจุบันให้เป็นสเปค แต่อนุญาตให้มีช่องว่างพิเศษได้อย่างสมบูรณ์ตราบใดที่มันดูเหมือนกัน
เนื่องจากนี่เป็นภาพเคลื่อนไหวคุณสามารถล้างเอาต์พุตในแต่ละวินาทีหรือพิมพ์บรรทัดใหม่มากพอที่จะทำให้เคลื่อนไหวในกรอบการรับชม (คุณอาจถือว่าเฟรมการดูเป็นขนาดที่จำเป็นสำหรับการเคลื่อนไหว)
อนุญาตให้ใช้ช่วงเวลาที่สอดคล้องกันนอกเหนือจากหนึ่งวินาที (เช่น 999 millis เพื่อบันทึกไบต์หรือสองวินาทีด้วยเหตุผลบางอย่าง) แต่ควรเป็นเช่นนั้นเครื่องตัดหญ้ายังคงเคลื่อนไหวตามธรรมชาติ
หากเป็นไปได้ให้จัดทำภาพ (TIO, Snippet, GIF, ฯลฯ )
นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ