提出 #31816545


ソースコード 拡げる

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

using ll = long long;

int main() {
    int N;
    ll L, R;
    cin >> N >> L >> R;
    L -= 1;
    vector<int> A(N);
    iota(begin(A), end(A), 1);
    int x = 0;
    ll cnt = 0;
    while (cnt + (N - x - 1) <= L) {
        cnt += N - x - 1;
        x += 1;
    }
    int y = x + 1;
    while (cnt < L) {
        cnt += 1;
        y += 1;
    }
    while (cnt < R and y < N) {
        swap(A[x], A[y]);
        cnt += 1;
        y += 1;
    }
    x += 1;
    const int memo_x = x;
    while (cnt + (N - x - 1) < R) {
        cnt += N - x - 1;
        x += 1;
    }
    reverse(begin(A) + memo_x, end(A));
    reverse(begin(A) + x, end(A));
    y = x + 1;
    while (cnt < R and y < N) {
        swap(A[x], A[y]);
        cnt += 1;
        y += 1;
    }
    for (int i = 0; i < N; ++i) {
        cout << A[i] << " \n"[i + 1 == N];
    }
    return 0;
}

提出情報

提出日時
問題 G - Swap Many Times
ユーザ KoD
言語 C++ (GCC 9.2.1)
得点 600
コード長 945 Byte
結果 AC
実行時間 29 ms
メモリ 4004 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 600 / 600
結果
AC × 2
AC × 39
セット名 テストケース
Sample example_00.txt, example_01.txt
All example_00.txt, example_01.txt, test_00.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt
ケース名 結果 実行時間 メモリ
example_00.txt AC 8 ms 3368 KiB
example_01.txt AC 2 ms 3556 KiB
test_00.txt AC 22 ms 3800 KiB
test_01.txt AC 10 ms 3472 KiB
test_02.txt AC 16 ms 3676 KiB
test_03.txt AC 20 ms 3752 KiB
test_04.txt AC 20 ms 3752 KiB
test_05.txt AC 22 ms 3808 KiB
test_06.txt AC 14 ms 3444 KiB
test_07.txt AC 21 ms 3656 KiB
test_08.txt AC 28 ms 3864 KiB
test_09.txt AC 25 ms 4004 KiB
test_10.txt AC 15 ms 3556 KiB
test_11.txt AC 12 ms 3392 KiB
test_12.txt AC 14 ms 3368 KiB
test_13.txt AC 7 ms 3480 KiB
test_14.txt AC 19 ms 3512 KiB
test_15.txt AC 8 ms 3572 KiB
test_16.txt AC 10 ms 3512 KiB
test_17.txt AC 16 ms 3592 KiB
test_18.txt AC 17 ms 3600 KiB
test_19.txt AC 14 ms 3336 KiB
test_20.txt AC 26 ms 3776 KiB
test_21.txt AC 10 ms 3340 KiB
test_22.txt AC 20 ms 3480 KiB
test_23.txt AC 27 ms 3944 KiB
test_24.txt AC 9 ms 3528 KiB
test_25.txt AC 10 ms 3488 KiB
test_26.txt AC 23 ms 3852 KiB
test_27.txt AC 14 ms 3556 KiB
test_28.txt AC 25 ms 3860 KiB
test_29.txt AC 26 ms 3940 KiB
test_30.txt AC 28 ms 3800 KiB
test_31.txt AC 8 ms 3700 KiB
test_32.txt AC 27 ms 3804 KiB
test_33.txt AC 7 ms 3504 KiB
test_34.txt AC 11 ms 3404 KiB
test_35.txt AC 3 ms 3396 KiB
test_36.txt AC 29 ms 4000 KiB