Submission

Status:

(PP)(PPPPP)(PPPPPP)(PP)

Subtask/Task Score:

{20/20}{40/40}{30/30}{10/10}

Score: 100

User: Dormon

Problemset: สร้างคู่ผกผัน (Inversion)

Language: cpp

Time: 0.003 second

Submitted On: 2025-05-26 16:12:42

#include <vector>
#include "inversion.h"

std::vector<int> inversion(int n, int k) {
    using namespace std;
    vector<int> ans(n);
    int cnt = 1;
    bool fin = false;
    for (int i = n - 1;i >= 0;i--){
        if (k >= i){
            ans[i] = cnt++;
            k -= i;
        }
        else {
            ans[k] = cnt++;
            break;
        }
    }
    for (int i = 0;i < n;i++)
        if (ans[i] == 0)
            ans[i] = cnt++;
    return ans;
}