Submission
Status:
(PP)(-SSSS)(-SSSSS)(-S)
Subtask/Task Score:
{20/20}{0/40}{0/30}{0/10}
Score: 20
User: Dormon
Problemset: สร้างคู่ผกผัน (Inversion)
Language: cpp
Time: 0.002 second
Submitted On: 2025-05-26 16:04:38
#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 && i != 0){
ans[i] = cnt;
cnt++;
k -= i;
}
else if (fin == false){
ans[k] = cnt;
cnt++;
fin = true;
}
}
for (int i = 0;i < n;i++)
if (ans[i] == 0){
ans[i] = cnt;
cnt++;
}
return ans;
}