Inne, zadanie nr 9
ostatnie wiadomości | regulamin | latex
Autor | Zadanie / Rozwiązanie |
crazygardener postów: 1 | ![]() Witam sympatyków matematyki. Od kilku dni męczy mnie pewien problem matematyczny: Jak ze zbioru przypadkowych liczb wybrać takie, które po zsumowaniu ze sobą dadzą określony wynik. To znaczy, że do oczekiwanego wyniku trzeba dopasować sumę odpowiednich liczb. Przykład: Zbiór liczb: (5,12,18,7,1,8,21,10,3) oczekiwany wynik: 15 Otrzymamy go sumując ze sobą liczby: (5,10), (12,3), (7,8), (5,7,3) W tym przykładzie łatwo to zrobić wzrokowo. A ja chciałbym wiedzieć, jak to zrobić matematycznie (np. w Excelu) z bardziej skomplikowanymi liczbami większego zbioru. Z góry dziękuję za rzetelną pomoc. |
Mariusz Śliwiński postów: 489 | ![]() To jest bardziej problem algorytmiczny. W exelu nie masz możliwości przeszukiwania liczb w pętli. Do rozwiązania tego problemu należy użyć języka programowania wysokiego poziomu (np C++). Napisz jak liczne mają być to zbiory oraz jakiej wielkości liczby mają być elementami zbioru. W miarę możliwości napiszę taki skrypt i udostępnię źródło oraz program do wyznaczania takich podzbiorów. |
zodiac postów: 31 | ![]() lista kroków które należałoby wykonać będzie wyglądać mniej więcej tak (pisane na szybko, więc pewnie to nie jest najlepsze rozwiązanie): - posortowanie zbioru wynik: 1,3,5,7,8,10,12,18,21 odrzucenie liczb większych od oczekiwanego wyniku: 1,3,5,7,8,10,12 teraz wyszukujemy sumy zaczynając od końca, bierzemy więc liczbę 12 brakuje nam 15-12=3, szukamy zatem liczb mniejszych bądź równych 3 znajdujemy liczbę 3 (12,3) szukamy dalej liczb które dają sumę 3 - nie ma takich teraz bierzemy kolejną największą liczbę - 10 15-10=5 szukamy wiec liczb z pośród 1,3,5 znajdujemy 5 (10,5) kolejna liczba - 8 15-8=7 szukamy liczb które dają wynik 7 itd gdybym miał napisać program, to posłużyłbym się rekurencją ;) edit: teraz dopiero zobaczyłem datę założenia tematu: 2010-12-30, sorry za spóźnienie;) Wiadomość była modyfikowana 2011-03-12 20:27:10 przez zodiac |
strony: 1 |
Prawo do pisania przysługuje tylko zalogowanym użytkownikom. Zaloguj się lub zarejestruj