[COCI2223 - Contest 02] Bài 2: Pingvin

Xem PDF

Nộp bài

Điểm: 70 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 512M
Input: bàn phím
Output: màn hình

Tác giả:
Dạng bài

Chú chim cánh cụt Zrakoplović muốn học cách bay!

Không gian mà cậu ấy sẽ học cách bay có thể được tưởng tượng như một khối lập phương có kích thước ~n \times n \times n~, được chia thành ~n^3~ khối lập phương đơn vị. Mỗi khối đơn vị có thể được mô tả bằng ba tọa độ ~(x, y, z)~, trong đó ~x~, ~y~ và ~z~ là các số nguyên từ ~1~ đến ~n~, tọa độ ~x~ biểu thị khoảng cách từ cạnh trái của không gian, tọa độ ~y~ biểu thị khoảng cách từ cạnh trước của không gian và tọa độ ~z~ biểu thị chiều cao.

Một số khối đơn vị này chứa các đám mây, còn một số thì không.

Zrakoplović sợ mây nên sẽ chỉ học bay ở những nơi không có mây. Ban đầu anh ấy thấy bản thân mình đang ở một vị trí ~(x_s, y_s, z_s)~, sao cho ~z_s = 1~ (tức là ở độ cao ~1~) và muốn đến vị trí ~(x_e, y_e, z_e)~.

Hiện tại, anh ấy đang hoàn thiện kỹ năng bay theo các hướng song song với một trong các trục của không gian (tức là theo hướng của trục ~x~, trục ~y~ hoặc trục ~z~), và trong một cú vỗ cánh, anh ấy có thể đi nhiều nhất một đơn vị khối.

Trước khi quyết định bay, Zrakoplović muốn biết mình cần phải vỗ cánh bao nhiêu lần để đến được vị trí mong muốn. Trong khi anh ấy đang chuẩn bị cho chuyến bay, hãy giúp anh ấy trả lời câu hỏi đó.

Input

  • Dòng đầu tiên chứa số nguyên dương ~n~ (~1 \leq n \leq 100~) là kích thước của không gian Zrakoplović học bay.
  • Dòng thứ hai chứa ba số nguyên dương ~x_s~, ~y_s~ và ~z_s~ (~1 \leq x_s, y_s \leq n, z_s = 1~), vị trí bắt đầu của Zrakoplović.
  • Dòng thứ ba chứa ba số nguyên dương ~x_e~, ~y_e~ và ~z_e~ (~1 \leq x_e, y_e, z_s \leq n~), vị trí kết thúc của Zrakoplović.
  • Tiếp theo là ~n~ ma trận nhị phân ~n \times n~ mô tả không gian, ma trận thứ ~i~ mô tả không gian ở độ cao ~i~. Kí tự 0 thể hiện khối đơn vị đó không có mây, 1 thể hiện khối đơn vị đó có mây. Đảm bảo điểm xuất phát và kết thúc của Zrakoplović không có mây.

Output

In ra một dòng duy nhất là số lần vỗ cánh ít nhất để Zrakoplović đến được điểm kết thúc. Nếu Zrakoplović không thể đến được, in ra -1.

Scoring

  1. ~n=2~ (7 điểm)

  2. Không có mây (16 điểm)

  3. Mọi vị trí có tọa độ ~z~ lớn hơn ~1~ không có mây (22 điểm)

  4. Không có ràng buộc gì thêm (25 điểm)

Sample Input 1

2
1 1 1
1 1 2
00
10
01
00

Sample Output 1

1

Sample Input 2

3
2 3 1
1 1 1
000
010
000
111
111
111
111
111
111

Sample Output 2

3

Sample Input 3

3
2 1 1
3 2 2
000
010
110
010
001
001
101
110
000

Sample Output 3

3

Explanation

  • Ở ví dụ đầu tiên, Zrakoplović có thể đến được điểm mong muốn bằng một cái vỗ cánh, di chuyển theo hướng trục ~z~ một đơn vị khối.
  • Ở ví dụ thứ ba, Zrakoplović có thể đến được điểm mong muốn bằng ba cái vỗ cánh, đầu tiên đi đến ~(2,1,2)~, sau đó là ~(2,2,2)~ và cuối cùng là ~(3,2,2)~.

Bình luận đầu tiên

Bình luận

Không có bình luận nào.