#include<stdio.h>
#include<set>
using namespace std;
char S[1212];
int dx[4] = { 1,-1,0,0 };
int dy[4] = { 0,0,1,-1 };
int T[512], R[4] = { 1,0,3,2 };
set<pair<int, int>>M;
int main() {
T['N'] = 0, T['S'] = 1, T['W'] = 2, T['E'] = 3;
int n,nowx,nowy, ans = 0;
scanf("%d%s", &n,S);
nowx = nowy = 0;
M.insert({ 0,0 });
bool flag = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < 2; j++) {
nowx += dx[T[S[i]]], nowy += dy[T[S[i]]];
if (flag == 0 && M.find({ nowx,nowy }) != M.end() && T[S[i - 1]] != R[T[S[i]]]) ans++;
flag = (M.find({ nowx,nowy }) != M.end());
M.insert({ nowx,nowy });
}
}
printf("%d", ans);
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c2V0Pgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjaGFyIFNbMTIxMl07CmludCBkeFs0XSA9IHsgMSwtMSwwLDAgfTsKaW50IGR5WzRdID0geyAwLDAsMSwtMSB9OwppbnQgVFs1MTJdLCBSWzRdID0geyAxLDAsMywyIH07CnNldDxwYWlyPGludCwgaW50Pj5NOwppbnQgbWFpbigpIHsKCVRbJ04nXSA9IDAsIFRbJ1MnXSA9IDEsIFRbJ1cnXSA9IDIsIFRbJ0UnXSA9IDM7CglpbnQgbixub3d4LG5vd3ksIGFucyA9IDA7CglzY2FuZigiJWQlcyIsICZuLFMpOwoJbm93eCA9IG5vd3kgPSAwOwoJTS5pbnNlcnQoeyAwLDAgfSk7Cglib29sIGZsYWcgPSAwOwoJZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKCQlmb3IgKGludCBqID0gMDsgaiA8IDI7IGorKykgewoJCQlub3d4ICs9IGR4W1RbU1tpXV1dLCBub3d5ICs9IGR5W1RbU1tpXV1dOwoJCQlpZiAoZmxhZyA9PSAwICYmIE0uZmluZCh7IG5vd3gsbm93eSB9KSAhPSBNLmVuZCgpICYmIFRbU1tpIC0gMV1dICE9IFJbVFtTW2ldXV0pIGFucysrOwoJCQlmbGFnID0gKE0uZmluZCh7IG5vd3gsbm93eSB9KSAhPSBNLmVuZCgpKTsKCQkJTS5pbnNlcnQoeyBub3d4LG5vd3kgfSk7CgkJfQoJfQoJcHJpbnRmKCIlZCIsIGFucyk7CglyZXR1cm4gMDsKfQ==