61362023-11-03 01:04:09horvathabelMediánok (40 pont)cpp17Accepted 40/4014ms5884 KiB
#include <bits/stdc++.h>
using namespace std;
int lk,ln,n,k,med;
vector<int> ans;
int cnt;
void solve1(int i){
        if (cnt%2==0){
            if (lk==med) lk--;
            ans[i]=lk;
            lk--;
        }
        else{
            if (ln==med) ln++;
            ans[i]=ln;
            ln++;
        }
    }

void solve2(int i){
   {
        if (cnt%2==0){
            if (ln==med) ln++;
            ans[i]=ln;
            ln++;
        }
        else{
            if (lk==med) lk--;
            ans[i]=lk;
            lk--;
        }
    }
}
int main()
{
    n,k;
    cin>>n>>k;
    ans.resize(n+1,-1);
    med=(n+1)/2;
    lk=med-1,ln=med+1;
    ans[k]=med;
    cnt=0;
    if (k%2==0){
        for (int i=k-1;i>0;i--){
            solve2(i);
            cnt++;
        }
        cnt=0;
        for (int i=k+1;i<=n;i++){
            solve1(i);
            cnt++;

        }
    }
    else{
        for (int i=k-1;i>0;i--){

            solve1(i);
            cnt++;
        }
        for (int i=k+1;i<=n;i++){
            solve2(i);
            cnt++;
        }
    }

    for (int i=1; i<=n;i++){
        cout<<ans[i]<<" ";
    }
}
SubtaskSumTestVerdictTimeMemory
base40/40
1Accepted0/03ms1876 KiB
2Accepted0/014ms2968 KiB
3Accepted1/13ms2372 KiB
4Accepted1/13ms2556 KiB
5Accepted1/13ms2636 KiB
6Accepted1/13ms2644 KiB
7Accepted1/13ms2800 KiB
8Accepted1/13ms3052 KiB
9Accepted1/13ms3268 KiB
10Accepted1/13ms3484 KiB
11Accepted1/12ms3576 KiB
12Accepted1/12ms3536 KiB
13Accepted1/13ms3792 KiB
14Accepted1/13ms3924 KiB
15Accepted1/13ms4000 KiB
16Accepted1/13ms4116 KiB
17Accepted1/13ms4008 KiB
18Accepted1/13ms4144 KiB
19Accepted1/13ms4252 KiB
20Accepted1/13ms4156 KiB
21Accepted1/114ms4860 KiB
22Accepted1/114ms4832 KiB
23Accepted1/114ms4848 KiB
24Accepted1/114ms4852 KiB
25Accepted1/114ms4996 KiB
26Accepted1/114ms4856 KiB
27Accepted1/114ms4860 KiB
28Accepted1/114ms4868 KiB
29Accepted1/114ms5000 KiB
30Accepted1/114ms5084 KiB
31Accepted1/114ms5088 KiB
32Accepted1/114ms5176 KiB
33Accepted1/114ms5316 KiB
34Accepted2/214ms5416 KiB
35Accepted1/114ms5400 KiB
36Accepted1/114ms5320 KiB
37Accepted2/214ms5328 KiB
38Accepted1/114ms5584 KiB
39Accepted1/114ms5484 KiB
40Accepted1/114ms5884 KiB