Canadian Computing Competition: 2012 Stage 2, Day 2, Problem 1
You are using an editor to type in a program that you hope solves another problem on this contest. Instead of thinking about solving this problem, you look at your editor and start to think of how to edit your program more quickly.
Your editor has the following characteristics:
- you can move your cursor using the direction keys: up (
), down ( ), left ( ) or right ( ) - pressing
will move the cursor one character to the right; if the cursor is on the rightmost character of a line, the cursor will move to the first character of the next line below the current line; (the cursor will not move if it is in the bottom-right position) - pressing
will move the cursor one character to the left; if the cursor is on the leftmost character of a line, the cursor will move to the last character of the previous line above the current line; (the cursor will not move if it is in the top-left position) - pressing
will move the cursor to the character immediately above it; if there is no character immediately above the cursor, it will move to the last character of the previous line above the current line; (the cursor will not move if it is on the first line) - pressing
will move the cursor to the character immediately below it; if there is no character immediately below the cursor, it will move to the last character of the next line below the current line; (the cursor will not move if it is on the last line)
You would like to find the least number of key presses that will cause you to move between positions in your editor in a given program which you are editing.
Input Specification
The first line of input is
Output Specification
Output the minimum number of key presses that are required to move the
cursor from row
Sample Input
4
40
10
4
80
4 78
1 35
Output for Sample Input
10
Comments