Aktywne Wpisy
uefaman +40
Mój stary (wykształcenie podstawowe, nigdy żadnej książki nie przeczytał, praca to robol) na serio wierzy że ufo to kosmici i istnieją. Dawniej oglądał programy typu Nie do wiary, Strefa Tajemnic itp. xD i do tej pory wierzy że ufoludki istnieją tylko rządy państw nie chcą tego upublicznić xD
#astronomia #polskiedomy
#astronomia #polskiedomy
Zawiera treści 18+
Ta treść została oznaczona jako materiał kontrowersyjny lub dla dorosłych.
Zagadka programistyczna:
Czy potrafiłby mi ktoś wskazać jak można napisać skrypt (np. w php) który rozwiąże poniższe równanie?
((3*x1)+ (7*x2)+ (1*x3) + (3*x4)+ (7*x5)+ (1*x6) + (3*x7) + (7*x8)) == 10
Chodzi o podanie takich zestawów kombinacji x1,x2... które dawałyby w tym równaniu 10.
x1,x2,x3... itd {0-10}
Czy w ogóle da się to zrobić bez znacznego obciążenia procesora?
Dziękuję!:)
#php
@mrsomeone: zwykły bruteforce czyli próba wszystkich kombinacji 10^8 ?
@mrsomeone: inna sprawa to to, że liczby z przedziału {1,10} jako rozwiązanie tego równania odpadają, bo nawet gdybyś wziął najmniejszą z nich czyli 1 jako wartość każdego z parametrów, to nijak nie wyjdzie 10.
więc rozwiązań tego równania dla podanego przez ciebie przedziału
rozwiązaniem na pewno będą liczby z przedziału (0,1>
nie będą na pewno to liczby rzeczywiste, więc bruteforce nie ma szans żeby dał radę
Najłatwiej wyliczalne metodą kolejnych przybliżeń. Liczysz wartość dla środka przedziału (0, 1> i sprawdzasz, po której stronie tego środka jest wynik. Ten środek stanie się odpowiednio początkiem lub końcem nowego przedziału. Sprawdzasz wartość środka tego nowego przedziału i znowu ograniczasz przedział. W końcu trafisz :)
@singollo: chyba, że uwzględnisz też 0 - wtedy już masz co najmniej kilka rozwiązań
wszystkie niewiadome muszą być różne od siebie
wszystkie muszą być całkowite albo choćby wymierne
... ale to pewnie też pozostawia olbrzymią ilość rozwiązań...