Desen

Time limit: 1s Memory limit: 256MB Input: Output:

Odată ce și-a dat seama că desenatul "intersecției de meteoriți" este o treabă futilă, FlaviuS a descoperit că o ocupație mult mai complicată și importantă este întocmai opusul! El are un plan de atac: știe unde pune pixul pe hârtie, și intocmai care este șirul de direcții pe care îl va parcurge (Nord, Est, Sud și Vest). Scopul lui este de a crea o linie frântă care nu trece de 22 ori prin același punct, mai puțin punctul final, care vrea să fie întocmai același cu cel inițial. De asemenea, 22 mutări consecutive au orientări axiale diferite (după una verticală urmează una orizontală și vice-versa).

Cerință

Date fiind TT desene înfățișate prin NN și șirul de NN direcții, FlaviuS vă roagă (nu știe soluția) să îi spuneți dacă își poate îndeplini visul artistic, iar dacă da, cât de lung trebuie să fie fiecare segment pe care acesta îl desenează.

Date de intrare

Pe prima linie se află numărul TT de desene pe care FlaviuS vrea să le finalizeze cu succes. Fiecare dintre cele TT teste este descris prin 22 linii, prima având numărul natural NN, iar a doua, un șir de NN caractere din mulțimea {N,E,S,W}\{\texttt{N}, \texttt{E}, \texttt{S}, \texttt{W}\}.

Date de ieșire

Pentru fiecare test, pe prima linie se va afișa YES dacă desenul poate fi realizat, respectiv NO altfel. Dacă se poate, pe a doua linie se vor afișa NN numere naturale nenule care reprezintă lungimea liniei în fiecare direcție.

Restricții și precizări

  • 1T2 000 0001 \leq T \leq 2 \ 000 \ 000.
  • 1N200 0001 \leq N \leq 200 \ 000.
  • Suma valorilor NN dintr-un fișier nu va depăși 2 000 0002 \ 000 \ 000.
  • Fiecare valoare de NN este pară, iar primul caracter este E sau W.
  • Orice soluție corectă în care lungimile sunt cel mult 10910^9 este acceptată.
  • Orice soluție care nu afișează, pentru răspuns afirmativ, NN numere pozitive mai mici sau egale cu 10910^9 se va acorda 0%0\% din punctajul pe test.
  • Dacă se determină corect existența unei soluții, dar valorile din șir nu creează un desen pe placul lui FlaviuS, se va acorda 20%20\% din punctajul pe test.
# Punctaj Restricții
1 15 1N101 \leq N \leq 10 și 1T151 \leq T \leq 15.
2 35 1N2 0001 \leq N \leq 2 \ 000 iar suma valorilor NN dintr-un fișier nu va depăși 20 00020 \ 000.
3 10 Există maxim o singură valoare N în fiecare șir.
4 40 Fără restricții suplimentare.

Exemplu

stdin

3
6
ENWNWS
6
ENWNEN
20
ENESENWNENWNWSWSWSES

stdout

YES
4 1 3 3 1 4
NO
YES
2 3 2 3 2 6 3 2 3 1 1 1 4 1 1 2 2 3 2 4

Explicație

Pentru primul exemplu, desenul este redat în imaginea de mai jos. Bulina albastră indică de unde începe și se termină capodopera.

Pentru al doilea exemplu, nu există nicio soluție corectă.

Pentru al treilea exemplu, drumul următor nu este deloc suspicios.

Log in or sign up to be able to send submissions!