#ATarc069b. [ABC055D] Menagerie

[ABC055D] Menagerie

题目描述

因为喜欢动物,すぬけくん建造了一个动物园。

在这个动物园中,有 1,2,3,...,N1,2,3,...,N 编号的 NN 只动物按环状排列。编号为 ii2iN12 \le i \le N-1)的动物与编号 i1i-1i+1i+1 的动物相邻。而 11 号动物与 NN 号和 22 号动物相邻,NN 号动物与 N1N-1 号和 11 号动物相邻。

在动物园中有两类动物:只说真话的“羊”,以及只说假话的“狼”。

すぬけくん无法分辨谁是“羊”谁是“狼”,于是向每只动物询问它的左右邻居是否为同一种类。第 ii 只动物的回答为 sis_i。若 sis_io,表示第 ii 只动物说自己的两侧邻居是同一种类,若为 x,表示为不同种类。

更正式地说,当一只“羊”的左右邻居同为“羊”,或同为“狼”时,它会说 o,否则说 x。当一只“狼”的左右邻居同为“羊”或同为“狼”时,它会说 x,否则说 o

すぬけくん很好奇,是否存在一种动物种类的分配方式,不与这些回答相矛盾。如果存在,请给出一种方案;如果不存在,请输出 -1

输入格式

输入通过标准输入给出,格式如下:

NN ss

输出格式

如果不存在与 ss 不矛盾的动物种类分配方式,请输出 -1

如果存在,请输出一个仅由 S(羊)和 W(狼)组成的长度为 NN 的字符串 tttit_iS 表示第 ii 只动物为“羊”,为 W 表示为“狼”。只要输出的方案与 ss 不矛盾,即视为正确答案。

样例 1

输入

6
ooxoox

输出

SSSWWS

样例 2

输入

3
oox

输出

-1

样例 3

输入

10
oxooxoxoox

输出

SSWWSSSWWS

说明/提示

约束条件

  • 3N1053 \le N \le 10^5
  • ss 是仅由 ox 组成的、长度为 NN 的字符串

样例解释 1

例如编号 1,2,3,4,5,61,2,3,4,5,6 的动物分别为羊、羊、羊、狼、狼、羊时,与所有动物的发言均不矛盾。或如“狼、羊、狼、羊、狼、狼”的分配也不矛盾。要注意,若一只羊的两侧邻居相同,则说 o,若不同则说 x;而狼正好相反。

b34c052fc21c42d2def9b98d6dccd05c.png

样例解释 2

如果不存在满足条件的方案,请输出 -1

由 ChatGPT 5 翻译