Untitled

 avatar
unknown
plain_text
4 years ago
657 B
7
Indexable
#include <iostream>

using namespace std;
struct B
{
    int idx;
    bool haveSwap;
};
int main()
{
    int n,k;
    cin>>n>>k;
    B b[n+1];
    for(int i=1;i<=n;i++)
    {
        b[i].idx=i;
        b[i].haveSwap=false;
    }
    for(int i=1;i<=n;i++)
    {
        if(i+k<=n&&!b[i].haveSwap&&!b[i+k].haveSwap)
        {
            swap(b[i],b[i+k]);
            b[i].haveSwap=b[i+k].haveSwap=true;
        }
    }
    for(int i=1;i<=n;i++)
    {
        if(!b[i].haveSwap)
        {
            cout<<"-1";
            return 0;
        }
    }
    for(int i=1;i<=n;i++)
    {
        cout<<b[i].idx<<" ";
    }
}
Editor is loading...