This is Markov.
Markov's golf ball rolls around randomly.
Markov's ball will hole however he strikes it.
Markov is smart.
Be like Markov.
Ve bu:
Langton'ın arka bahçesinde bir karınca yuvasıdır.
Karınca yuvası Markov'un golf topu MarGolf'u tutacak kadar büyük. Bununla birlikte, karınca yuvası etrafındaki araziye bağlı olarak hareket eder ve yön değiştirir.
Görev
10x20 alanın bir girdisini alın:
*
MargolfO
Lanton'un Karınca yuvası,
Karınca yuvası saat yönünde 90 derece döner.
Karınca yuvası saat yönünün tersine 90 derece döner0
Langton karınca yuvası MarGolf
Bir alan şöyle görünür:
,...,.,,..,...,.,,..
..,.,,,..,...,..,.,.
.,,*.,....,.,,,.,,,.
,.,,.,...,,.,.,,,,,.
.,..,....,,.....,,.,
,.,.,...,..,.,,,,..,
....,,,,,,,,,.......
........,,.,...,...,
,,,,,,,,,,,,....,O.,
,.,.,.,.....,,.,,,,,
Oyun kuralları:
Giriş alanının yapılandırmasına kene 0 denir. Programınızın, hem MarGolf hem de Langton'ın Karınca Yuvası'nın başka bir hücreye geçeceği bir sonraki kene yapılandırmasını değerlendirmesi ve yazdırması gerekir. Geçerli hücredeki öğe, şu anda hedef hücredeki öğe olacaktır. Hem MarGolf hem de karınca yuvası bir sonraki kene içinde aynı hücreye taşınırsa oyun sona erer.
Hareket kuralları:
- MarGolf rastgele hareket eder. MarGolf çevresindeki 3x3 alanındaki dokuz hücrenin hepsi de aynı şekilde seçilme şansına sahiptir. Bu, alanın kenarındaki 6 hücre ve bir köşedeki 4 hücre arasında bir seçim haline gelir.
- Langton Anthill'in hareket yönünü yukarı, aşağı, sola veya sağa (NSEW veya eşdeğeri) hatırlaması gerekir. Her bir çene yönünde bir hücre hareket eder ve hücrenin orijinal içeriği, yukarıda belirtildiği gibi yönünü saat yönünde veya saat yönünün tersine değiştirir. Kene 0'daki başlangıç yönü rastgele, her yönün başlangıç olma olasılığı eşittir.
notlar
- Program oyun bitene kadar her bir işaretin yapılandırmasını yazdırmalıdır.
- Onay numarası her onayın alan yapılandırmasından önce gelir.
- Girişin her zaman geçerli olduğunu varsayabilirsiniz.
- En kısa program bayt kazanır.
Güncelleme: karınca yuvası aksi takdirde tarladan çıkacaksa, hareket etmeden önce yönü tersine çevirmeyi unutmuşum. Hatırlatmak için user81655'e teşekkür ederiz.
O
için yönünü belirler .