2011-08-30 11 views
3

2 문자 만 사용하여 단어를 생성 할 수 있습니다. 'k'와 'e'라고 말하면됩니다. 단어의 길이는 5 - 35 자입니다. 단어의 각 문자와 len은 rand()로 무작위로 선택됩니다. 누군가가 내가 생산할 수있는 가능한 고유 한 단어가 얼마나 많은지 말해 줄 수 있습니까? 감사합니다. .순열의 수를 계산 (내 생각 엔)

추신 : 이들은 순열 또는 조합이라고 부릅니까?

+1

'2^5 + 2^6 + ... + 2^35' ='2^36 - 2^5' –

+3

이들은 조합이나 순열이 아니며 프로그래밍 질문을하지 않았습니다. –

+0

글쎄 나는 코딩에서 너희들을 구해 냈다. 나는 발전기를 직접 만들었다;) – kombawa

답변

3

순열 : 주문 사항 (귀하의 경우) 조합 : 순서, 즉 "애"를 중요하지 않습니다 == "EK"

N을 = 2^5 + 2^6 + ... 2^34 + 2^35

이 유한 길이 등비이며, 볼프람 알파 말해 준다 : 합계 [2^(K), {K, 5, 35}] 68,719,476,704 == 약 690 억

+0

사실 나는 당신에게 정확한 용어를 말하기에는 너무 녹슨 것이고, 그것은 "조합"이 아닙니다. "순열", "변주"또는 다른 것일 수 있습니다. –

+0

... 처분? –

1

각 단어 길이 N : 각 문자에 대해 2 가지 선택 사항이 있으므로 2 n 개의 가능한 단어가 있습니다. 5 ~ 35 모든 단어의 길이가이 값을 추가 :

>>> sum(2**n for n in range(5,36)) 
68719476704L 
+0

두 글자의 조합 수를 나타냅니다. 26 * 25 * your_answer는 총 고유 한 가능성을 제공합니다 ... 제 생각에는. – prelic

+0

@prelic : 나는 당신이 어떻게 26 * 25 * 68719476704를 얻는지를 보지 못했다. – Jimmy

+0

구체적으로,'product (N ... N-1 ...) '형식의 답은 대체하지 않고 순열을 가정합니다. 따라서 숫자가 매번 내려갑니다. 우리는 편지의 고정 된 가방으로 여기에서 일하지 않고있다. – Jimmy