译自 ROI 2014 Day1 T2. Робинзон и крокодилы
鲁滨逊住在一个由 个方格组成的矩形小岛上。
有几只鳄鱼爬上了岛,在阳光下取暖并打起了盹。鲁滨逊想要在不惊动它们的情况下,把这些讨厌的邻居赶回水里。为此,他向正在打盹的鳄鱼们扔坚果。
岛上的每个格子中至多有一只鳄鱼。被坚果惊吓到的鳄鱼会沿着固定方向笔直奔跑,直到冲进水里为止。对于每只鳄鱼,已知它被吓到后奔跑的方向。鳄鱼的奔跑方向始终与岛的边界平行。
如果一只受惊的鳄鱼在奔跑途中撞上了另一只鳄鱼,两只鳄鱼都会被激怒,并立刻攻击鲁滨逊。因此,鲁滨逊必须谨慎选择投掷坚果的目标,确保被吓跑的鳄鱼前方的所有格子都是空的。
鲁滨逊在一只鳄鱼完全跑进水里之前,不会再扔下一颗新的坚果。
请你编写程序,计算鲁滨逊最多可以赶走多少只鳄鱼,而不会激怒它们。