Я наткнулся на ответ на этот вопрос, и я не понимаю, как он работает для части со значением k и операцией if (i & 1). Вопрос: https://codeforces.com/contest/1339/problem/B
Решение: https://codeforces.com/contest/1339/submission/76435784
int main(){
int t;scanf("%d",&t);
while(t--){
memset(a,0,sizeof(a));
int n;scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
sort(a+1,a+1+n);
// В этой части мне нужна помощь по
for(int k=(n+1)/2,i=0;i<n;i++){
if(i&1)//What does this do{
printf("%d ",a[k+i]);
k+=i;// why k has to changed ;
}
else{
printf("%d ",a[k-i]);
k-=i;
}
}
}
return 0;
}