問題一覧 > 通常問題

No.2773 Wake up Record 1

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 130
作問者 : yuusaanyuusaan / テスター : 👑 amentorimaruamentorimaru 👑 seekworserseekworser
0 ProblemId : 10481 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-06-06 21:17:17

ストーリー

ゆ~さんは最近寝つきが悪く、夜に何度も目が覚めてしまいます。

そこで、ゆ~さんはいつ目が覚めてしまうのかを把握して睡眠の質を向上させようとしました。

そのため睡眠記録ロボットを購入してゆ~さん自身の睡眠状態を記録させました。

あなたの仕事はゆ~さんの代わりにゆ~さんの目が覚めてしまった時刻を全て見つけることです。

「これで夜ちゃんと寝られるといいんだけど...」

問題文

ゆ~さんはロボットに睡眠記録を付けさせることにしました。

ロボットはゆ~さんの状態を時間 $1$ から時間 $N$ まで計測し、睡眠記録を $N$ 文字の文字列 $S$ として記録します。

$S$ はoxのみからなり、 $i$ 文字目がoの場合、時間 $i$ のときゆ~さんは起きていることを、xの場合寝ていることを表します。

ゆ~さんは時間 $1$ の直前まで寝ていたものとします。 $2 \leq k \leq N$ を満たす整数 $k$ のうち、時間 $k-1$ では寝ていて、時間 $k$ では起きているものを昇順にすべて出力してください。

入力

$N$
$S$

制約
  • $1 \leqq N \leqq 10^5$
  • $|S| = N$
  • $N$ は整数
  • $S$ は英小文字のoxのみからなる文字列
  • $S$ の $1$ 文字目はxである

出力

$2$ 行出力してください。

$1$ 行目には条件を満たす $k$ の個数を出力してください。
$2$ 行目には条件を満たす $k$ を昇順に空白区切りですべて出力してください。

サンプル

サンプル1
入力
8
xxoooxxo
出力
2
3 8

条件を満たす $k$ は $3$ と $8$ の $2$ つです。

そのため、 $1$ 行目には $k$ の個数である2を、$2$ 行目には条件を満たす $k$ である3 8を出力します。

サンプル2
入力
1
x
出力
0

条件を満たす $k$ の個数が $0$ 個である場合もあります。

サンプル3
入力
19
xooxoooxxxxoooxooox
出力
4
2 5 12 16

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。