Nói xấu là hành động ném ai đó hoặc thứ gì đó ra khỏi cửa sổ.
- Wikipedia
Đầu vào
Đầu vào sẽ bao gồm hai phần:
Một kế hoạch sàn và một người trong nhà / tòa nhà.
v><^
đại diện cho một người, chỉ theo hướng được biểu thị bằng mũi tên. Đầu vào sẽ chứa chính xác một người.-
và|
đại diện cho các bức tường, và#
đại diện cho một cửa sổ.
Phần đầu vào này có thể được lấy dưới dạng một chuỗi đơn hoặc một mảng / danh sách / v.v. của dòng. Sẽ không bao giờ có bất kỳ dấu vết hoặc khoảng trắng hàng đầu nào, và đầu vào sẽ luôn là một hình chữ nhật.
Thí dụ:
-----###--- | | | ^ | -----------
Một số nguyên ≥ 1 biểu thị quãng đường (tính theo ký tự) mà người đó đi được.
Đầu ra
Đầu ra phải là
1
nếu người đó kết thúc "bên trong" một cửa sổ (tức là sau khi di chuyển về phía trước khoảng cách được chỉ định trong đầu vào, thì người đó ở trên đầu a#
).2
nếu người đó đã bị từ chối (tiếp xúc với a#
và sau đó tiếp tục tiếp tục).3
nếu người đó va vào tường (tiếp xúc với một-
hoặc|
. Sau khi va vào tường, người đó dừng lại và không tiếp tục đi qua nó).0
nếu không có điều nào ở trên là đúng (và tất cả những gì người đó đã làm là đi qua không gian trống).
Giả định
Tất cả những điều sau đây có thể được coi là đúng:
Người đó sẽ không bao giờ đi "ra khỏi giới hạn" của khu vực đầu vào.
Sau khi được defenestrated, người đó sẽ không bao giờ tiếp xúc với một
#
hoặc một-
/|
(do đó bạn không cần phải lo lắng về việc nếu2
và1
hay3
đều đúng).
Các trường hợp thử nghiệm
Đối với "kế hoạch sàn" sau đây:
-----
| |
|###|
| |
| ^ |
In Out
1 0
2 1
3 2
Đối với kế hoạch sàn này:
> | # |
In Out
1 0
2-99 3 * that is, any input 2-99 outputs 3
Đối với kế hoạch sàn này:
||####|#|#|##|<
In Out
any 3
Trường hợp thử nghiệm cuối cùng:
|v|
|#|
| |
| |
| |
| |
In Out
1 1
2-5 2
Has someone been for-sparta'd?