ABC475 A - mnclr
単色
考え方
入力は文字列が $1$ つなので、string 型の変数を $1$ つ用意し、cin で入力を受け取る。
文字列の中身を $1$ 文字ずつ見ていきたいので、forループを用意する。
そして、出力用文字列に $1$ 文字ずつコピーしていく。
for (int i=0; i<n; i++) {
result += s.at(i);
}
これで、全く同じ文字列を $1$ 文字ずつコピーすることはできる。
これを、$1$ 文字ずつ 'o' を挟んでいくには、コピー後に 'o' を追加すればよい。
result += 'o';
ただし、これでは最後の文字の後ろに余計な 'o' が追加されてしまう。
そこで、'o' の追加はif文で「最後じゃなかったら追加する」ようにすればよい。
最後に忘れずに、作った答え用の文字列を cout で出力しておしまい。
入力例1での動作
入力を受け取る。
s: "mtr"
$1$ 文字ずつ順に見ていく。
$i=0$ では、s[0]='m' を追加して result="m" となる。
最後の文字ではないので、さらに 'o' を追加して result="mo" となる。
$i=1$ では、s[1]='t' を追加して result="mot" となる。
最後の文字ではないので、さらに 'o' を追加して result="moto" となる。
$i=2$ では、s[2]='r' を追加して result="motor" となる。
最後の文字なので、'o' は追加しない。
したがって、答えは motor となる。
注意点
特になし。
別解
特になし。