배열의 데카르트 곱을 다양한 횟수로 계산해야 할 필요가 있습니다. 예를 들어, 내 배열 [1,2]
이고 나는 3 개 개의 슬롯에이 값을 입력해야, 그 결과는 다음과 같습니다데카르트 파워 (임의의 시간을 가진 데카르트 곱)
[1,1,1]
[1,1,2]
[1,2,1]
[1,2,2]
[2,1,1]
[2,1,2]
[2,2,1]
[2,2,2]
? 하지만,
class Array
def **(n)
self.product(*(n-1).times.map{ self })
end
end
나는 방법에 자신의 N-1 사본을 전달하는 더 우아한 방법이 있는지 확실하지 않습니다 : 나는 monkeypatching을 좋아하기 때문에
감사합니다. 나는 이전에 이것을 보지 못했습니다. – Phrogz