Sua tarefa é regular o tráfego em uma encruzilhada. Existem 4 estradas vindas do norte, leste, sul e oeste.
A entrada é uma sequência que representa o tráfego próximo em cada estrada. Por exemplo, NNNWS
indica que há um total de 5 carros: três no norte, um no oeste e um no sul. A ordem dos caracteres não tem importância aqui, NNNWS
é equivalente a WNNSN
.
Você deve emitir a ordem em que os carros devem seguir, usando a prioridade da regra correta: os carros vindos do sul devem deixar os carros vindos do leste irem primeiro, o leste dá lugar ao norte, o norte dá lugar ao oeste e o oeste dá lugar a sul.
Por exemplo, com a entrada NNNWS
, o carro sul deve ir primeiro, depois o carro oeste, depois os 3 carros norte. A saída deve ser assim SWNNN
.
Existem alguns casos indecidíveis, por exemplo NS
ou NNWSE
: você deve então gerar a string stuck
.
Casos de teste
N => N
NW => WN
NWS => SWN
SNW => SWN
SSSSS => SSSSS
ENNNNES => NNNNEES
NS => stuck
NNWSE => stuck
stuck
.
NS
preso? Porque ambos NS
e SN
seria uma solução?