poniedziałek, 8 września 2008

Matematyka

Jako że zaczęła się szkoła czas rozruszać mózgownice. Proste a jakże praktyczne zadanie.

Ola ma dwa projekty w jednym ma 3.5 programisty w drugim 2 programistow
Jasiu ma także dwa projekty w jednym 2.5 programisty w drugim 4.5 programisty
Pewnego dnia w ramach improvementu Ola postanowiła oddać 1.5 programisty z projektu pierwszego i 0.5 programisty z drugiego projektu. Dostała za to 1 programistę z projektu drugiego. Ilu programistów ma Ola?

Wskazówka: 0.5 programisty + 0.5 programisty to wcale nie jest jeden programista.

8 komentarzy:

Anonimowy pisze...

Tutaj pomogą tylko liczby zespolone i wprowadzenie jednostki Jot, gdzie Jot razy Jot równa się minus siedem. Jest to tak zwany Programista Urojony. Wówczas rozwiązanie tego problemu jest możliwe - oczywiście w tej dziedzinie.

Anonimowy pisze...

Należy wykorzystać tu rachunek pradopodobieństwa. Na improvemncie Ola staciła czyli zyskała. Skoro zyskała - powinna za to zapłacić. Ola płaci oddajac ułamek każdego programisty z pierwszego projektu na testera. Skoro zyskała - do każdego programisty z drugiego projektu dostała 1/4 nie każdego testera.
Ola nie wie ile ma czego.
Pytanie właściwe - ilu programistów ma Jaś? Czy Jaś ma dalej 2,5 programisty + 4,5 programisty (wskazówka nr 2: 2,5 programisty +4,5 programisty wcale nie oznacza 7 programistów). Skoro tak to komu oddawała progrmistów Ola?

Anonimowy pisze...

A moim zdanie sztuka to sztuka. Jak np ktos ma do dyspozycji 4,5 programistow to oznacza ze maksymalnie moze byc 9 programistow. Ola jak oddala 1,5 programisty + 0,5 programisty to stracila byc moze 4 programistow, a co zyskala ? Zyskala jednego programiste czyli max 2 ludzi. Patrzac na sztuki moga tu byc straty - zalezy jednak jaki effort maja poszczegolne jednostki projektowe. Czy 0,5 programisty moze miec effort taki jak jeden programista - przekonamy sie wkrotce :)

markob pisze...

Pytane nr 3: Komu oddala sie sama Ola?

Anonimowy pisze...

fantazyjny_milton ma rację, ale prócz jednostki jot wypadałoby również wprowadzić jednostkę er i dopiero wtedy zacząć obliczenia..

tak czy inaczej proponuję napisać kod, który policzy to za nas - oczywiście używając wspaniałych praktyk i właściwego nazewnictwa obiektów ;)

powodzenia

p.s.
osoba, która jako pierwsza poda prawidłową odpowiedź może liczyć na "czeeeeeść" od dziewczyny z recepcji

Anonimowy pisze...

Panowie i panie. Offtopic poleci ale musi. Pracujecie, zarabiacie, stać was. A mnie sie kolega skarży, że słoik ćwikły wczoraj pełny został opędzlowany przez kogoś, kto wcale się nie dokładał finansowo...lekko mówiąc. Resztki na dnie zostawił/a. Jak ktoś jest bardzo głodny to niech podejdzie, powie, ja ze swojej skromnej pensji testera chleba nakupię i ser nawet do niego. Ale czyjeś z lodówki po kryjomu wyjadać? Wstyd Panowie i Panie, wstyd.

Anonimowy pisze...

Rozwiązanie problemu jest trywialne. Wystarczy obrać odpowiednia metrykę oraz dziedzinę problemu. W tym przypadku będzie to urojona dziedzina programistyczna, w której występują jednostki zwane programistami (przyjmujemy zapis 'x' oznaczający x programistów oraz urojonymi programistami, których graficznym symbolem oznaczajacym y jednostkowych obiektów należących do zbioru urojonych programistów: xup).
Definiując metrykę (aby to zwizualizować dla nas - programistów (zarówno realnych jak i tych urojonych), którzyśmy z nauk królową wspólnego mieli niewiele niech metryka nasza serwerem będzie) winniśmy zdefiniować set działań dostepnych dla każdej z metryk (my nieuczeni w piśmie okreslmy to dla naszych internal potrzeb jako interfejs), jakie użytkownik metryki (dla nas klajent) wykonać będzie.
Czyniąc temu zadość otrzymujemy:
+ - urojone dodanie programistów
- - urojone odejmowanie programisty.
stad
(p1+p1up)+(p2+p2up)=(p1+p2)+(p1+p2)up
(p1+p1up)-(p2+p2up)=(p1-p2)+(p1-p2)up
Wiadomo również, że (0,5*p1+0*p1up)+(0,5*p1+0*p1up) <> 1*p1+0*p1up [na podstawie twierdzenia Taliba - more info: ext. 142 "z Talibem proszę...."]
Możemy sobie uroić, że (0*p1+0,5*p1up)+(0*p1+0,5*p1up) = 0*p1+1*p1up

Zaopatrzeni w dziedzinę i wachlarz działań, które możemy na niej wykonać, przestępujemy prędko do (jako że tim się rozwija silnie i wszędzie sie czuje (oprócz zapachu wykładzin) wiatr neo modernizmu, zastosujemy tutaj również zapdejtowaną nowomowę polską - słówno "rozklinić" będące synonimem wyrazu "zinwestygować") rozkliniania problemu
A więc tak.
Ola:
Przed improvementem
PROJ1: 3+0,5up
PROJ2: 2 + 0up

Jasiu:
PROJ3: 2+0,5up
PROJ4: 4+0,5up

Po improvemencie (zakładam, że Ola jest dobrym PGL i dodała otrzymanego programistę do drugiego zespołu)
PROJ1: 3+0,5up - 1 - 0,5up = 3 + 0up
PROJ2: 2- 0,5up+ 1 = 3-0,5up

Resumując Ola posiada 3+3-0,5up = 6-0,5up.

Odp.: Ola posiada sześciu realnych programistów i -0,5 urojonego programisty.

Jak widać zadanie okazało się (cytując za księciem całek) "aumblo twywialne", wobec czego zwracam sie do autora o bardziej wyszukane łamigłówki, coby w prajwet tajmie móc przeczesywać niezbadane labirynty naszych umysłów.

Anonimowy pisze...

@ ^^^ ktoś tu potrzebuje chyba urlopu ;)