Впечатляюще... правда, не очень понятно... Может пояснишь?
Так то я решил проблему но твое решение интереснее. Я сделал так
for (i1=0; i1<N-p-q+1; i1++)
{
for (i2=i1+p+1; i2<N-q+1; i2++)
{
for (k=0; k<N; k++) {variant[k]=0;}
for (k=i1; k<i1+p; k++) {variant[k]=1;}
for (k=i2; k<i2+q; k++) {variant[k]=1;}
// что то делаю с выборкой
}
}
тут p,q,N вместо p, q, s.
Можешь очистить алгоритм от вывода, оставить только массив variant?