Go to Post Office:w 1 l 1 r 1 l.Pickup a passenger going to The Babelfishery.Go to The Babelfishery:s 1 l 1 r.Pickup a passenger going to Sunny Skies Park.Go to Sunny Skies Park:n 1 l 1 l 1 r.[a]Go to Heisenberg's:n 1 r 1 r 3 r.Pickup a passenger going to Cyclone.Go to Go More:n 1 l 3 l 3 l.Go to Starchild Numerology:e 2 r.62 is waiting at Starchild Numerology.Pickup a passenger going to Cyclone.Go to Cyclone:e 1 l 2 r.Pickup a passenger going to What's The Difference.Pickup a passenger going to Divide and Conquer.Pickup a passenger going to Divide and Conquer.Go to Divide and Conquer:n 2 r 2 r 1 r.Pickup a passenger going to Trunkers.Go to Trunkers:e 1 r 3 r 1 l.Pickup a passenger going to Multiplication Station.Go to Cyclone:w 2 r.Pickup a passenger going to Multiplication Station.Go to Multiplication Station:s 1 l 2 r 4 l.Pickup a passenger going to What's The Difference.Go to What's The Difference:n 2 l 1 r 3 l.Pickup a passenger going to Addition Alley.Go to Starchild Numerology:e 1 r 3 l 2 r.1 is waiting at Starchild Numerology.63 is waiting at Starchild Numerology.Pickup a passenger going to Addition Alley.Pickup a passenger going to The Underground.Go to Addition Alley:e 1 l 2 r 3 r 1 r.Pickup a passenger going to Joyless Park.Go to Writer's Depot:n 1 l 1 l.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- is waiting at Writer's Depot.Pickup a passenger going to Chop Suey.Go to Joyless Park:n 3 r 2 r 2 l.Go to Chop Suey:w 1 r 1 r 1 l.[b]Pickup a passenger going to Narrow Path Park.Go to Narrow Path Park:n 1 l 1 r 1 l.Go to The Underground:e 1 r.Switch to plan "c" if no one is waiting.Pickup a passenger going to The Underground.Go to Fueler Up:s.Go to Chop Suey:n 3 r 1 l.Switch to plan "b".[c]Go to Joyless Park:n 1 r.Pickup a passenger going to The Underground.Go to Narrow Path Park:w 1 r 3 l.[d]Pickup a passenger going to KonKat's.Go to KonKat's:e 1 r.Pickup a passenger going to KonKat's.Go to The Underground:s.Switch to plan "e" if no one is waiting.Pickup a passenger going to The Underground.Go to Fueler Up:s.Go to Narrow Path Park:n 4 l.Switch to plan "d".[e]Go to KonKat's:n.Pickup a passenger going to Riverview Bridge.Go to Riverview Bridge:n 1 l.Go to Narrow Path Park:e 1 l 1 r.Pickup a passenger going to Post Office.Go to Post Office:e 1 r 4 r 1 l.Go to Sunny Skies Park:s 1 r 1 l 1 r.Pickup a passenger going to The Underground.Go to The Underground:n 1 r 1 r 2 r.Switch to plan "f" if no one is waiting.Pickup a passenger going to Sunny Skies Park.Go to Sunny Skies Park:n 3 l 2 l 1 l.Switch to plan "a".[f]
ลองออนไลน์!
แท็กซี่ถูกสุดไม่ได้ทำเพื่อการนี้ แต่คุณสามารถทำมันได้! ฉันจะพยายามอธิบายสิ่งที่เกิดขึ้นด้านล่างเวอร์ชั่นที่ไม่ตีกอล์ฟ
Go to Post Office: west 1st left 1st right 1st left.
Pickup a passenger going to The Babelfishery.
Go to The Babelfishery: south 1st left 1st right.
Pickup a passenger going to Sunny Skies Park.
Go to Sunny Skies Park: north 1st left 1st left 1st right.
[a]
Go to Heisenberg's: north 1st right 1st right 3rd right.
Pickup a passenger going to Cyclone.
Go to Go More: north 1st left 3rd left 3rd left.
Go to Starchild Numerology: east 2nd right.
62 is waiting at Starchild Numerology.
Pickup a passenger going to Cyclone.
Go to Cyclone: east 1st left 2nd right.
Pickup a passenger going to What's The Difference.
Pickup a passenger going to Divide and Conquer.
Pickup a passenger going to Divide and Conquer.
Go to Divide and Conquer: north 2nd right 2nd right 1st right.
Pickup a passenger going to Trunkers.
Go to Trunkers: east 1st right 3rd right 1st left.
Pickup a passenger going to Multiplication Station.
Go to Cyclone: west 2nd right.
Pickup a passenger going to Multiplication Station.
Go to Multiplication Station: south 1st left 2nd right 4th left.
Pickup a passenger going to What's The Difference.
Go to What's The Difference: north 2nd left 1st right 3rd left.
Pickup a passenger going to Addition Alley.
Go to Starchild Numerology: east 1st right 3rd left 2nd right.
1 is waiting at Starchild Numerology.
63 is waiting at Starchild Numerology.
Pickup a passenger going to Addition Alley.
Pickup a passenger going to The Underground.
Go to Addition Alley: east 1st left 2nd right 3rd right 1st right.
Pickup a passenger going to Joyless Park.
Go to Writer's Depot: north 1st left 1st left.
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789- is waiting at Writer's Depot.
Pickup a passenger going to Chop Suey.
Go to Joyless Park: north 3rd right 2nd right 2nd left.
Go to Chop Suey: west 1st right 1st right 1st left.
[b]
Pickup a passenger going to Narrow Path Park.
Go to Narrow Path Park: north 1st left 1st right 1st left.
Go to The Underground: east 1st right.
Switch to plan "c" if no one is waiting.
Pickup a passenger going to The Underground.
Go to Fueler Up: south.
Go to Chop Suey: north 3rd right 1st left.
Switch to plan "b".
[c]
Go to Joyless Park: north 1st right.
Pickup a passenger going to The Underground.
Go to Narrow Path Park: west 1st right 3rd left.
[d]
Pickup a passenger going to KonKat's.
Go to KonKat's: east 1st right.
Pickup a passenger going to KonKat's.
Go to The Underground: south.
Switch to plan "e" if no one is waiting.
Pickup a passenger going to The Underground.
Go to Fueler Up: south.
Go to Narrow Path Park: north 4th left.
Switch to plan "d".
[e]
Go to KonKat's: north.
Pickup a passenger going to Riverview Bridge.
Go to Riverview Bridge: north 1st left.
Go to Narrow Path Park: east 1st left 1st right.
Pickup a passenger going to Post Office.
Go to Post Office: east 1st right 4th right 1st left.
Go to Sunny Skies Park: south 1st right 1st left 1st right.
Pickup a passenger going to The Underground.
Go to The Underground: north 1st right 1st right 2nd right.
Switch to plan "f" if no one is waiting.
Pickup a passenger going to Sunny Skies Park.
Go to Sunny Skies Park: north 3rd left 2nd left 1st left.
Switch to plan "a".
[f]
เริ่มต้น:
รับstdinรับค่า stdin เป็นข้อความแปลงเป็นตัวเลขแล้วไปติดที่ใดที่หนึ่งเพื่อรอ
วางแผนส่วนที่ 1: รับจำนวนเต็ม 1-62
สุ่มรับจำนวนเต็มแบบสุ่มจากนั้นรับ62
เป็นจำนวน ทำซ้ำทั้งจำนวนเต็มแบบสุ่มและ62
เพราะเราต้องการในภายหลัง คุณสามารถพกพาผู้โดยสาร 3 ในครั้งเดียวดังนั้นเราจึงจบลงด้วยrand
, และrand
62
(อีกอัน62
จะรอจนกว่าเราจะกลับมา) ไปหารrand
ด้วย62
และตัดทอนผลลัพธ์เพื่อรับจำนวนเต็ม กลับไปรับสำเนาอื่น62
แล้วคูณด้วยจำนวนเต็มที่ถูกตัดทอนจากการหาร rand
สุดท้ายลบสินค้าจากสำเนาแรกของ นี่ทำให้เรามีตัวเลข 0-61 ตอนนี้เราต้องกลับไปที่รถกระบะ a 1
และเพิ่มลงในผลลัพธ์เพื่อรับหมายเลข 1-62 mod(rand(),62)+1
ใช่ทุกคนหลายสายของข้อความเป็นเพียง
วางแผนส่วนที่ 2: สร้างอาร์เรย์ของอักขระที่จะเลือก
รถกระบะสตริงที่มีอักขระที่ใช้ได้ทั้งหมดและอีกหนึ่งตัวที่เราไม่ต้องการ (อีกมากในภายหลัง) 63
เราหยิบขึ้นมาก่อนหน้านี้การแข่งขันความยาวสายนี้ นำไปส่งที่ Chop Suey เพื่อแยกผู้โดยสารเป็นรายบุคคล
แผนข: ย้ายอาร์เรย์เพื่อให้เราสามารถเลือกตัวละครทีละตัว
ย้ายตัวละครทุกตัวไปที่ Narrow Path Park มันเป็นสแต็คเดียวที่มีอยู่และวิธีเดียวที่จะไม่มีผู้โดยสารที่หลงทางได้ ทุกสิ่งทุกอย่างใน Townsburg คือ FIFO ดังนั้นฉันจะต้องย้อนกลับไปหาผู้โดยสารทุกคนในการวนซ้ำโดยรวม ด้วยวิธีนี้ฉันสามารถทิ้งพวกเขาไว้ที่สวนสาธารณะและพวกเขาจะถูกผลักไสโดยตัวละครใหม่ 63 ตัวทุกครั้ง ครั้งแรกมากA
มีแนวโน้มที่จะไม่หลบหนี
แผน C: เตรียมที่จะเลือกตัวละคร
นี่เป็นเพียงไม่กี่ป้ายที่ไม่จำเป็นต้องอยู่ในแผน D. จัดตำแหน่งรถแท็กซี่เพื่อเตรียมพร้อม
แผน D: รับตัวละครทั้งหมดที่เราไม่ต้องการ
เริ่มต้นด้วยตัวอักษรตัวแรกใน "อาเรย์" ที่กลับด้าน (นี่คือตัวอักษร 63 ที่เราไม่ต้องการ) เก็บและต่อตัวอักษรในขณะที่เรานับถอยหลังจากผลของmod
ฟังก์ชั่น ในแผนกเมื่อคุณตีศูนย์อักขระถัดไปคือตัวที่คุณต้องการ
แผน E: จมน้ำตายสิ่งที่คุณไม่ต้องการแล้วส่งคืนสิ่งที่เลือก
"[P] ลอบวางมือลงที่สะพานริเวอร์วิวดูเหมือนจะตกลงไปด้านข้างและลงไปในแม่น้ำเสมอ ... " เอาล่ะนั่นเป็นการกำจัดสายผู้แพ้ที่ต่อกันนี้ ไปรับตัวละครต่อไปและส่งไปยัง stdout ในที่สุดเรามาตรวจสอบจำนวนอักขระที่เราพิมพ์ไปแล้ว กลับไปที่ Sunny Skies เพื่อรับค่า stdin ที่เราทิ้งไว้นานแล้ว ลบหนึ่งและถ้าผลลัพธ์มีค่ามากกว่าศูนย์ให้ส่งกลับมาเพื่อรอและเริ่มต้นใหม่อีกครั้งที่แผนก