나는이 c++ vector
와 std::pair<unsigned long, unsigned long>
객체. 를 사용하여 벡터 객체의 순열을 생성하려고합니다 std::next_permutation()
. 그러나 permutations
기대되는 반환 순열의 크기가 지정된 파이썬 의 함수 와 유사하게 순열의 크기를 지정 하고 싶습니다 .
기본적으로, c++
동등한
import itertools
list = [1,2,3,4,5,6,7]
for permutation in itertools.permutations(list, 3):
print(permutation)
(1, 2, 3)
(1, 2, 4)
(1, 2, 5)
(1, 2, 6)
(1, 2, 7)
(1, 3, 2)
(1, 3, 4)
..
(7, 5, 4)
(7, 5, 6)
(7, 6, 1)
(7, 6, 2)
(7, 6, 3)
(7, 6, 4)
(7, 6, 5)
python 데모를 추가해 주셔서 감사합니다 @ Jarod42 :)
—
d4rk4ng31
파이썬 결과를 모르기 때문에 내 편에서해야했지만 C ++에서 어떻게 해야하는지 확신했습니다.
—
Jarod42
참고로 중복 입력을
—
Jarod42
(1, 1)
어떻게 처리하고 싶 습니까? python 순열은 duplicated를 제공 [(1, 1), (1, 1)]
하는 반면, 중복을 std::next_permutation
피하십시오 (만 {1, 1}
).
아뇨 중복 없음
—
d4rk4ng31