けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

AtCoder ABC 356 A - Subsegment Reverse (7Q, 灰色, 100 点)

整数値に対する for 文の練習!!

問題概要

数列  1, 2, \dots, N がある。

この  L 項目から  R 項目までを反転させてできる数列を出力せよ。

解法

for 文を用いて次のようにすればよい。

  1.  1 から  L-1 までを順に出力する
  2.  R から  L までを逆順に出力する
  3.  R+1 から  N までを順に出力する

コード

#include <bits/stdc++.h>
using namespace std;

int main() {
    int N, L, R;
    cin >> N >> L >> R;
    for (int i = 1; i <= L-1; ++i) cout << i << " ";
    for (int i = R; i >= L; --i) cout << i << " ";
    for (int i = R+1; i <= N; ++i) cout << i << " ";
    cout << endl;
}