2011-01-26 10 views
1

私はベクトルの一部から順列を生成しようとしています。下記参照。私は残念ながら1位および3 vector::at()間の順列を生成する必要がベクトルの一部からのstd :: next_permutation()

vector<int> myArray; 
myArray.resize(5); 
myArray[0] = 1; 
myArray[1] = 2; 
myArray[2] = 3; 
myArray[3] = 4; 
myArray[4] = 5; 
int i = 0; 

do { 
    for (i = 0; i < myArray.size(); i++) { 
     printf("%i ", myArray[i]); 
    } 
    printf("\n"); 
} while (next_permutation(myArray.at(1), myArray.at(3))); 

は、参照を返すが、パラメータとしてBidirectionalIteratornext_permutation()必要があります。

答えて

2

while (next_permutation(myArray.begin()+1, myArray.begin()+3));

関連する問題