Problem3876--CF877 - D. Olya and Energy Drinks

3876: CF877 - D. Olya and Energy Drinks

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

Olya loves energy drinks. She loves them so much that her room is full of empty cans from energy drinks.
Formally, her room can be represented as a field of $n×m$ cells, each cell of which is empty or littered with cans.
Olya drank a lot of energy drink, so now she can run $k$ meters per second. Each second she chooses one of the four directions (up, down, left or right) and runs from $1$ to $k$ meters in this direction. Of course, she can only run through empty cells.
Now Olya needs to get from cell $(x_1,y_1)$ to cell $(x_2,y_2)$. How many seconds will it take her if she moves optimally?
It's guaranteed that cells $(x_1,y_1)$ and $(x_2,y_2)$ are empty. These cells can coincide.

Input

The first line contains three integers $n, m, k\ (1 ≤n,m,k≤ 1000)$ — the sizes of the room and Olya's speed.
Then $n$ lines follow containing $m$ characters each, the $i$-th of them contains on $j$-th position "#", if the cell $(i,j)$ is littered with cans, and "." otherwise.
The last line contains four integers $x_1,y_1,x_2,y_2\ (1 ≤x_1,x_2≤n,\ 1 ≤y_1,y_2≤m)$ — the coordinates of the first and the last cells.

Output

Print a single integer — the minimum time it will take Olya to get from $(x_1,y_1)$ to $(x_2,y_2)$.
If it's impossible to get from $(x_1,y_1)$ to $(x_2,y_2)$, print $-1$.

Sample 1 Input

3 4 4
....
###.
....
1 1 3 1

Sample 1 Output

3
Olya should run 3 meters to the right in the first second, 2 meters down in the second second and 3 meters to the left in the third second.

Sample 2 Input

3 4 1
....
###.
....
1 1 3 1

Sample 2 Output

8
Olya should run to the right for 3 seconds, then down for 2 seconds and then to the left for 3 seconds.

Sample 3 Input

2 2 1
.#
#.
1 1 2 2

Sample 3 Output

-1

HINT

相同题目:CF877D

EDITORIAL

Source/Category