Mắc kẹt trong rãnh (Silver)
Đề bài
Mô tả
con bò đứng trên một cánh đồng vô hạn chia thành các ô vuông đơn vị. Con bò thứ đứng ở ô và quay mặt về hướng bắc (N, tức là tăng) hoặc hướng đông (E, tức là tăng).
Tất cả các con bò cùng bắt đầu di chuyển và có cùng tốc độ: mỗi phút mỗi con tiến đúng một ô theo hướng nó quay mặt. Con bò ăn sạch cỏ ở mọi ô nó đi qua, kể cả ô xuất phát.
Khi một con bò định bước vào một ô mà cỏ đã bị con bò khác ăn từ trước, nó dừng lại vĩnh viễn ở ô hiện tại và không bao giờ đi tiếp. Nếu hai con bò cùng bước vào một ô đúng tại một thời điểm thì không con nào dừng, vì lúc chúng tới nơi cỏ ở đó vẫn còn.
Nói con bò làm dừng con bò nếu dừng lại vì gặp ô mà đã ăn, hoặc nếu làm dừng một con bò nào đó mà con bò ấy lại làm dừng .
Với mỗi con bò, hãy cho biết nó làm dừng bao nhiêu con bò.
Dữ liệu vào
- Dòng : số nguyên .
- dòng tiếp theo: dòng thứ chứa một ký tự
NhoặcE, rồi hai số nguyên và .
Dữ liệu ra
dòng, dòng thứ là số con bò mà con bò làm dừng.
Ràng buộc
- Các giá trị đôi một phân biệt, các giá trị cũng đôi một phân biệt
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 E 3 5 N 5 3 E 4 6 E 10 4 N 11 1 E 9 2 |
0 0 1 2 1 0 |
Bò 3 làm dừng bò 1. Bò 4 làm dừng bò 5, bò 5 lại làm dừng bò 6, nên bò 4 được tính là làm dừng 2 con. |
| 2 E 0 5 N 4 0 |
1 0 |
Hai con gặp nhau ở ô (4,5). Bò 1 tới đó sau 4 phút, bò 2 sau 5 phút, nên bò 2 dừng lại. |
| 2 E 0 5 N 5 0 |
0 0 |
Vẫn ô gặp nhau đó nhưng cả hai cùng tới sau 5 phút, nên không con nào dừng. |
Bình luận