#include #include #include #include #include using namespace std; typedef struct { int x; int y; int v; int n; int id; } tocka; int n; int main(void){ int i,j,st,start; string rez; vector t,t2; tocka dummy; while (true) { rez=""; scanf("%d",&n); if (n==0) { break; } for (i=0;it[j].x) { swap(t[i],t[j]); } } } for (i=0;it[j].y) { swap(t[i],t[j]); } } } for (i=0;it[j].id) { swap(t[i],t[j]); } } } //sort za navisjega levega t2=t; for (i=0;it2[j].x) { swap(t2[i],t2[j]); } } } } if (t2[0].y==t2[0].y) { i=t2[0].v; } else { i=t2[0].n; } j=t2[0].id; //printf("i=%d j=%d\n",i,j); st=0; while (i!=t2[0].id) { if (i==0) { start=st; } if (t[i].v!=j) { if (t[i].y>t[j].y) { rez+="N"; } else { rez+="S"; } j = i; i = t[i].v; } else { if (t[i].x>t[j].x) { rez+="E"; } else { rez+="W"; } j = i; i = t[i].n; } //printf("i=%d j=%d\n",i,j); st++; //break; } if (i==0) { start=st; } if (t[i].v!=j) { if (t[i].y>t[j].y) { rez+="N"; } else { rez+="S"; } j = i; i = t[i].v; } else { if (t[i].x>t[j].x) { rez+="E"; } else { rez+="W"; } j = i; i = t[i].n; } //printf("i=%d j=%d\n",i,j); //cout << rez << endl; start++; for (i=0;i