Kötü muamele , birini veya bir şeyi pencereden atma eylemidir.
- Wikipedia
Giriş
Giriş iki bölümden oluşacaktır:
Bir kat planı ve evin / binanın içindeki bir kişi.
v><^
okla gösterilen yönü gösteren bir kişiyi temsil eder. Giriş tam olarak bir kişi içerecektir.-
ve|
duvarları temsil eder ve#
bir pencereyi temsil eder.
Girişin bu kısmı tek bir dize veya bir dizi / liste / etc olarak alınabilir. Hatları Asla takip eden veya öndeki boşluklar olmayacak ve giriş her zaman bir dikdörtgen olacaktır.
Örnek:
-----###--- | | | ^ | -----------
Kişinin ne kadar uzağa gittiğini (karakter olarak) belirten bir tam sayı ≥ 1.
Çıktı
Çıktı olmalıdır
1
eğer kişi bir pencerenin "içinde" bitiyorsa (yani girişte belirtilen mesafeyi ilerlettikten sonra, kişi a'nın üstündedir#
).2
Şahıs davalı olmuş ise (a ile temasa geçip#
daha sonra da devam etmiş).3
eğer kişi bir duvara çarptıysa (-
veya veya ile temas ederse|
. Duvara çarptıktan sonra kişi durur ve içinden geçmez).0
Yukarıdakilerin hiçbiri doğru değilse (ve yaptığı tek şey boş uzayda yolculuk yapmaktır).
Varsayımlar
Aşağıdakilerin hepsinin doğru olduğu varsayılabilir:
Kişi hiçbir zaman giriş alanının “sınırları dışına” seyahat etmeyecektir.
Defenestrated sonra, kişi birbiriyle temas asla
#
veya-
/|
(eğer endişe yaklaşık eğer gerek kalmaz2
ve1
ya3
ikisi de doğruysa).
Test durumları
Aşağıdaki "kat planı" için:
-----
| |
|###|
| |
| ^ |
In Out
1 0
2 1
3 2
Bu kat planı için:
> | # |
In Out
1 0
2-99 3 * that is, any input 2-99 outputs 3
Bu kat planı için:
||####|#|#|##|<
In Out
any 3
Son test durumu:
|v|
|#|
| |
| |
| |
| |
In Out
1 1
2-5 2
Has someone been for-sparta'd?