JOI 2009 - Walk

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1600 (p) Thời gian: 5.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Taro sống ở thị trấn JOI. Một ngày nọ, cậu quyết định đi dạo hằng ngày để nâng cao sức khỏe.

Thị trấn có \(H+1\) con đường chạy theo hướng đông–tây và \(W+1\) con đường chạy theo hướng bắc–nam, tạo thành một lưới ô vuông. Nhà Taro nằm ở giao lộ xa nhất về phía tây bắc; mỗi lần đi dạo, cậu đều bắt đầu từ đó.

Gọi \((a,b)\) là giao lộ thứ \(a\) tính từ phía bắc và thứ \(b\) tính từ phía tây, với các chỉ số bắt đầu từ \(1\). Nhà Taro nằm ở giao lộ \((1,1)\).

Trong hình, phía trên là phía bắc và phía trái là phía tây.

Taro muốn đường đi thay đổi qua từng ngày cho thú vị, nên cậu ghi một trong hai hướng “đông” hoặc “nam” tại mỗi giao lộ \((a,b)\) với \(1\le a\le H\)\(1\le b\le W\). Mỗi lần đi dạo diễn ra theo các quy tắc sau:

  • Khi đang ở một giao lộ có ghi hướng, Taro đổi hướng được ghi tại đó từ “đông” thành “nam” hoặc từ “nam” thành “đông”. Sau đó, cậu đi đến giao lộ kế tiếp theo hướng đã được ghi trước khi đổi.
  • Khi đến con đường xa nhất về phía đông hoặc con đường xa nhất về phía nam, cậu kết thúc lần đi dạo đó.

Các hướng đã thay đổi được giữ nguyên cho những lần đi dạo tiếp theo. Đi về phía đông từ \((a,b)\) sẽ đến \((a,b+1)\); đi về phía nam sẽ đến \((a+1,b)\).

Yêu cầu

Cho các hướng được ghi ban đầu. Xác định giao lộ mà Taro kết thúc lần đi dạo thứ \(N\).

Dữ liệu vào

Đọc từ đầu vào chuẩn:

  • Dòng thứ nhất chứa ba số nguyên \(H,W,N\) cách nhau bởi dấu cách.
  • \(H\) dòng tiếp theo, mỗi dòng chứa \(W\) số nguyên cách nhau bởi dấu cách. Số thứ \(j\) trên dòng thứ \(i\) trong số này mô tả hướng ban đầu tại giao lộ \((i,j)\): \(0\) là hướng nam, \(1\) là hướng đông.

Dữ liệu ra

Ghi ra đầu ra chuẩn hai số nguyên \(i,j\) cách nhau bởi một dấu cách trên một dòng, trong đó \((i,j)\) là giao lộ mà Taro kết thúc lần đi dạo thứ \(N\).

Ràng buộc

  • \(1\le H\le 1000\).
  • \(1\le W\le 1000\).
  • \(1\le N\le 10^7\).
  • Mỗi giá trị mô tả hướng là \(0\) hoặc \(1\).
  • Giới hạn thời gian: \(1\) giây.
  • Giới hạn bộ nhớ: \(64\) MB.

Chấm điểm

Bài có \(10\) bộ dữ liệu, mỗi bộ \(2\) điểm, tổng cộng \(20\) điểm.

  • \(30\%\) số điểm (\(6\) điểm) ứng với các bộ dữ liệu thỏa mãn \(H\le 100\), \(W\le 100\), \(N\le 1000\).

Ví dụ

Ví dụ 1

Input
3 4 3
1 0 1 1
0 1 0 0
1 0 1 0
Output
1 5

Ba hình dưới đây lần lượt minh họa đường đi trong lần đi dạo thứ nhất, thứ hai và thứ ba. Ký tự nghĩa là đông, ký tự nghĩa là nam. Các hướng trong mỗi hình là các hướng trước khi bắt đầu lần đi dạo tương ứng.

Bình luận

Mới nhất
Tải bình luận...

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

Kỳ thi: