Giới thiệu
Đấu trường là một vùng đất bằng phẳng với những tòa nhà chọc trời, mà kẻ thù của bạn sử dụng để che chắn. Bạn và kẻ thù của bạn bắn nhau bằng tia laser. Tất cả các bạn mang theo máy bay phản lực, cho phép bay.
Kẻ thù nào bạn có thể đánh bằng tia laser của mình và chúng đang ẩn nấp?
Vấn đề
Đầu tiên, kích thước của một đấu trường được cho bởi một số nguyên n
trên một dòng. Các n
dòng sau chứa n
số nguyên trên mỗi dòng cách nhau bởi một khoảng trắng. Mỗi số nguyên biểu thị chiều cao của tòa nhà tại vị trí đó. Mỗi tòa nhà là một khối hình chữ nhật, 1 đơn vị 1 đơn vị tính theo đơn vị chiều cao.
Tiếp theo, vị trí của bạn được đưa ra trên một dòng duy nhất là ba số dấu chấm động x
, y
, z
.
Cuối cùng, số lượng kẻ thù được cho bởi một số nguyên m
trên một dòng. Các m
dòng sau chứa ba số dấu phẩy động trên mỗi dòng cách nhau bởi một khoảng trắng. Những đại diện x
, y
và z
tọa độ của một kẻ thù. Hệ tọa độ được xác định như sau:
x
được đo từ trái sang phải trong đầu vào thành phốy
được đo từ trên xuống dướiz
được đo từ mặt đất lên
Đối với mỗi kẻ thù, nếu một đường không bị cản trở có thể được rút ra từ bạn để kẻ thù đó, sản lượng một dương tính số nguyên. Mặt khác, xuất ra một số nguyên âm . Đầu ra riêng biệt với một dòng mới.
Đầu vào mẫu
Nhận xét, ký hiệu là '#', có mặt để giúp bạn nhanh chóng xem mỗi dòng làm gì. Họ sẽ không có mặt trong đầu vào thực tế.
5 # Size of the map
0 0 0 0 0 # Buildings
0 0 0 0 0 # Buildings
4 4 4 4 4 # Buildings
0 0 0 0 0 # Buildings
0 0 0 0 0 # Buildings
2.5 0.0 4.0 # Your location
3 # Number of enemies
2.5 5.0 0.1 # Enemy location
2.5 5.0 5.0 # Enemy location
0.0 2.7 4.5 # Enemy location
Sản lượng mẫu
Đối với đầu vào mẫu ở trên, chúng tôi xuất ra như sau:
-1
1
1
Giả định
- 0
n
<< 100 - 0
m
<< 100 - 0 <=
x
<=n
- 0 <=
y
<=n
- 0 <=
z
<n
- Người chơi sẽ không được đặt ở hoặc bên trong một góc, cạnh hoặc cạnh của tòa nhà
- Tầm nhìn của bạn đến kẻ thù sẽ không bao giờ tiếp xúc với góc, cạnh hoặc cạnh của tòa nhà
- Một người chơi không phải là một vật cản