Logo
(追記) (追記ここまで)

31421번 - 호떡 뒤집기 스페셜 저지

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 (추가 시간 없음) 1024 MB (추가 메모리 없음)51716412930.641%

문제

프라이팬 위에는 $N$개의 호떡이 일렬로 놓여 있다. 각각의 호떡은 앞면이 흰색, 뒷면이 갈색이다. 처음에 모든 호떡은 앞면이 보이는 상태이다. 이때, 호떡 요리사인 현준이는 다음 절차에 따른 작업을 최대 $N$번 수행할 수 있다.

  1. $x$번째와 $(x+1)$번째 호떡에 보이는 색이 같도록 정수 $x$를 고른다. $(1 \le x \le N-1)$
  2. $x$번째 호떡에 보이는 색이 흰색이라면 1ドル$번째부터 $x$번째까지의 호떡을 모두 뒤집는다. 반대로 $x$번째 호떡에 보이는 색이 갈색이라면 $(x+1)$번째부터 $N$번째까지의 호떡을 모두 뒤집는다.

현준이는 작업을 수행해 자신이 원하는 색깔의 호떡 배열을 만들고 싶다. 현준이가 원하는 배열을 얻을 수 있는지 판단하고, 얻을 수 있다면 그 방법 중 하나를 아무거나 찾아서 현준이에게 알려주자.

입력

첫 번째 줄에 호떡의 개수 $N$이 주어진다. $(1 \le N \le 500,円 000)$

두 번째 줄에 현준이가 원하는 색깔의 배열을 나타내는 길이 $N$의 문자열 $S$가 주어진다. $S_i$가 W라면 $i$번째 호떡을 앞면이 보이게, B라면 $i$번째 호떡을 뒷면이 보이게 만들어야 한다.

출력

현준이가 원하는 색깔의 배열을 만들 수 있다면, 첫 번째 줄에 작업 횟수 $K$를 출력한다. $(0 \le K \le N)$

그다음 줄부터 $K$줄에 걸쳐 작업에 대한 정보를 출력한다. 그 중 $i$번째 줄에는 $i$번째 작업에서 선택한 $x$의 값을 출력한다. $(1 \le x \le N-1)$

가능한 작업 순서가 여러 개라면 그중 아무거나 출력한다. 또한, $K$의 값을 최소화하지 않아도 됨에 유의하라.

현준이가 원하는 색깔의 배열을 만들 수 없다면, 첫 번째 줄에 -1을 출력한다.

제한

예제 입력 1

4
WBBW

예제 출력 1

2
1
3

다음과 같은 순서로 작업하면, 호떡을 WBBW로 배치할 수 있다.

  1. $x = 1$: WWWW $\rightarrow$ BWWW
  2. $x = 3$: BWWW $\rightarrow$ WBBW

예제 입력 2

1
B

예제 출력 2

-1

$N = 1$일 때 어떠한 작업도 수행할 수 없으므로 1ドル$번째 호떡을 갈색으로 뒤집는 것이 불가능하다.

힌트

출처

University > 신촌지역 대학생 프로그래밍 대회 동아리 연합 > 2024 신촌지역 대학생 프로그래밍 대회 동아리 연합 겨울 대회 (SUAPC 2024 Winter) F번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /