![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Hej, mam zacme matematyczną i albo nie moge sobie przypomniec, albo mi sie wydaje ze to cos ma nazwe (IMG:style_emoticons/default/wink.gif)
Jak sie nazywa takie cos, co z liczb 1 2 3 da mi ciagi: 1 2 3 1 2 1 3 2 3 A z liczb 1 2 3 4 1 2 3 4 1 2 3 1 2 4 1 3 4 2 3 4 1 2 1 3 1 4 2 3 2 4 3 4 itd itd Ma to jakąs nazwe? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@com poprosilbym w kolejnosci i w zbiorze wynikow dokladnie takim, jaki podalem (IMG:style_emoticons/default/wink.gif)
@Crozin jest tam wiele ciekawych rzeczy, ale wiekszosc w c,z ktorym juz dawno nie mialem do czynienia, a przez co nie rozumiem idei. Dorwalem jeden js stamtad, ktory chyba robi to co chce, ale kurka po przerobieniu tego na php juz nie robi tego co chce (IMG:style_emoticons/default/wink.gif) js: Kod function k_combinations(set, k) { var i, j, combs, head, tailcombs; if (k > set.length || k <= 0) { return []; } if (k == set.length) { return [set]; } if (k == 1) { combs = []; for (i = 0; i < set.length; i++) { combs.push([set[i]]); } return combs; } // Assert {1 < k < set.length} combs = []; for (i = 0; i < set.length - k + 1; i++) { head = set.slice(i, i+1); tailcombs = k_combinations(set.slice(i + 1), k - 1); for (j = 0; j < tailcombs.length; j++) { combs.push(head.concat(tailcombs[j])); } } return combs; } Ferelna przerobka na php
Albo w c, ten kod, robi to co chce: Kod public static IEnumerable<IEnumerable<T>> Combinations<T>(this IEnumerable<T> elements, int k) { return k == 0 ? new[] { new T[0] } : elements.SelectMany((e, i) => elements.Skip(i + 1).Combinations(k - 1).Select(c => (new[] {e}).Concat(c))); } var result = Combinations(new[] { 1, 2, 3, 4, 5 }, 3); Tylko z C juz nie mialem bardzo dawno do czynienia i nie potrafie przetlumaczyc :/ edit: Dobra, mam. Post crozina nakierowal mnie na wlasciwą szukajkę (IMG:style_emoticons/default/smile.gif)
Powód edycji: [nospor]:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 00:10 |