The polar bears are going fishing. They plan to sail from (*s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>) to (*e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub>). However, the boat can only sail by wind. At each second, the wind blows in one of these directions: east, south, west or north. Assume the boat is currently at (*x*, *y*).
 -  If the wind blows to the east, the boat will move to (*x* + 1, *y*). -  If the wind blows to the south, the boat will move to (*x*, *y* - 1). -  If the wind blows to the west, the boat will move to (*x* - 1, *y*). -  If the wind blows to the north, the boat will move to (*x*, *y* + 1). 
Alternatively, they can hold the boat by the anchor. In this case, the boat stays at (*x*, *y*). Given the wind direction for *t* seconds, what is the earliest time they sail to (*e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub>)?
The first line contains five integers *t*, *s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>, *e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub> (1 ≤ *t* ≤ 10<sup class="upper-index">5</sup>,  - 10<sup class="upper-index">9</sup> ≤ *s*<sub class="lower-index">*x*</sub>, *s*<sub class="lower-index">*y*</sub>, *e*<sub class="lower-index">*x*</sub>, *e*<sub class="lower-index">*y*</sub> ≤ 10<sup class="upper-index">9</sup>). The starting location and the ending location will be different.

The second line contains *t* characters, the *i*-th character is the wind blowing direction at the *i*-th second. It will be one of the four possibilities: "E" (east), "S" (south), "W" (west) and "N" (north).
#include <iostream>
using namespace std;

long long myabs(long long x)
{
    // if (x < 0)
    //     return -x;
    return x;
}

int main()
{
    long long t, sx, sy, ex, ey, res = 0, minX, minY;
    cin >> t >> sx >> sy >> ex >> ey;
    char *str = new char[t + 1];
    cin >> str;
    long long i = 0;
    while (str[i] != '\0')
    {
        if (sx == ex && sy == ey)
            break;
        res++;
        if ((str[i] == 'W' || str[i] == 'E') && sx != ex)
        {
            if (str[i] == 'W' && myabs((ex - (sx - 1))) < myabs((ex - sx)))
            {
                sx -= 1;
                // res++;
            }
            else if (str[i] == 'E' && myabs((ex - (sx + 1))) < myabs((ex - sx)))
            {
                sx++;
                // res++;
            }
        }
        else if ((str[i] == 'N' || str[i] == 'S') && sy != ey)
        {
            if (str[i] == 'N' && myabs((ey - (sy + 1))) < myabs((ey - sy)))
            {
                // res++;
                sy += 1;
            }
            else if (str[i] == 'S' && myabs((ey - (sx - 1))) < myabs((ey - sy)))
            {
                // res++;
                sy--;
            }
        }
        i++;
    }
    if (sx == ex && sy == ey)
        cout << res << endl;
    else
        cout << -1 << endl;
}