61362023-11-03 01:04:09horvathabelMediánok (40 pont)cpp17Elfogadva 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]<<" ";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/03ms1876 KiB
2Elfogadva0/014ms2968 KiB
3Elfogadva1/13ms2372 KiB
4Elfogadva1/13ms2556 KiB
5Elfogadva1/13ms2636 KiB
6Elfogadva1/13ms2644 KiB
7Elfogadva1/13ms2800 KiB
8Elfogadva1/13ms3052 KiB
9Elfogadva1/13ms3268 KiB
10Elfogadva1/13ms3484 KiB
11Elfogadva1/12ms3576 KiB
12Elfogadva1/12ms3536 KiB
13Elfogadva1/13ms3792 KiB
14Elfogadva1/13ms3924 KiB
15Elfogadva1/13ms4000 KiB
16Elfogadva1/13ms4116 KiB
17Elfogadva1/13ms4008 KiB
18Elfogadva1/13ms4144 KiB
19Elfogadva1/13ms4252 KiB
20Elfogadva1/13ms4156 KiB
21Elfogadva1/114ms4860 KiB
22Elfogadva1/114ms4832 KiB
23Elfogadva1/114ms4848 KiB
24Elfogadva1/114ms4852 KiB
25Elfogadva1/114ms4996 KiB
26Elfogadva1/114ms4856 KiB
27Elfogadva1/114ms4860 KiB
28Elfogadva1/114ms4868 KiB
29Elfogadva1/114ms5000 KiB
30Elfogadva1/114ms5084 KiB
31Elfogadva1/114ms5088 KiB
32Elfogadva1/114ms5176 KiB
33Elfogadva1/114ms5316 KiB
34Elfogadva2/214ms5416 KiB
35Elfogadva1/114ms5400 KiB
36Elfogadva1/114ms5320 KiB
37Elfogadva2/214ms5328 KiB
38Elfogadva1/114ms5584 KiB
39Elfogadva1/114ms5484 KiB
40Elfogadva1/114ms5884 KiB