만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

관광 코스

시간 제한2초메모리 제한1024 MB

요약
원형 관광 경로에서 관광객마다 끝까지 호감도가 1 이상 남는지가 주어질 때, 눈밭과 사막의 배치를 하나 만들거나 불가능하면 NO를 출력합니다.
난이도

보통10점 중 7점

유형
누적 합, 문자열, 구현
정답자
아직 제출이 없습니다

문제

UCPC 왕국에는 왕국 전체를 둘러볼 수 있는 NN개의 구간으로 이루어진 원형 관광 코스가 있다. 각 구간에는 다음 구간으로 갈 수 있는 셔틀버스가 하나 있다. 1≤i<N1\leq i<N인 ii번째 구간에서는 i+1i+1번째 구간으로, NN번째 구간에서는 11번째 구간으로 이동할 수 있다.

이제 북극에서 온 NN명의 관광객이 이 코스로 UCPC 왕국을 둘러볼 예정이다. ii번째 관광객은 ii번째 구간에서 출발해 셔틀버스를 타고 총 NN개의 구간을 관광한다.

각 구간은 설원 또는 사막이다. 각 관광객은 시작 지점에서 호감도 11로 관광을 시작한다. 설원 구간을 지날 때마다 호감도가 11 증가하고, 사막 구간을 지날 때마다 11 감소한다. 관광 도중 호감도가 00이 되면 즉시 관광을 멈추고 자신의 나라로 떠난다. NN개의 구간을 모두 둘러본 뒤 호감도가 11 이상이면, 그 관광객은 UCPC 왕국의 비싼 기념품을 구매하고 자신의 나라로 돌아간다.

북극에 사는 당신은 각 관광객이 기념품을 샀는지 알고 있다. 이 정보로 관광 코스의 구조를 알아내야 한다. 1번부터 NN번 관광객의 기념품 구매 여부가 주어졌을 때, 가능한 관광 코스의 구조 중 하나를 출력하라.

출력

가능한 관광 코스가 존재하면 첫 줄에 YES를, 둘째 줄에 길이 NN의 문자열을 출력한다. ii번째 문자는 ii번째 구간이 설원이면 +, 사막이면 -이다.

가능한 관광 코스가 존재하지 않으면 첫 줄에 NO를 출력한다.

입력

첫 줄에 관광 코스 구간의 수 NN이 주어진다. (1≤N≤500 0001\leq N\leq 500\,000)

둘째 줄에 ii번째 관광객의 기념품 구매 여부를 나타내는 길이 NN의 문자열이 주어진다. ii번째 문자는 기념품을 구매했다면 O, 구매하지 않았다면 X이다.

예제3

  1. 예제 1

    입력
    5
    OXOXO
    
    예상 출력
    YES
    +-+-+
    
  2. 예제 2

    입력
    6
    XXXXXX
    
    예상 출력
    YES
    +--+--
    
  3. 예제 3

    입력
    5
    XXXOX
    
    예상 출력
    NO