Am primit rezolvări corecte de la Zoltan Szabo, Aurel Ionescu, Cristian Ciobanu, Claudiu Drăgan, Dan Petrişor, Ştefan Gaţachiu, Ady Nicolae.
Soluţie parţială: Valentin Ştefan
Justificarea cea mai completă a dat-o Ady Nicolae:
Avem relațiile:
X+Y+Z+W= 711
X*Y*Z*W=711.000.000
Am considerat că prețurile sunt în cenți.
Descompunem 711.000.000 în factori primi şi obținem: 2^6*3^2*5^6*79.
Aşadar, va trebui ca unul dintre cele 4 prețuri să fie de forma a*79,
unde a= 2, 2^2, 2^3, 2^4, 2^5, 2^6, 3, 3^2, 5, 5^2, 5^3, 5^4, 5^5, 5^6, 2*3, 2^2*3, etc.
Se observă că a trebuie să fie mai mic decât 9 pentru a respecta suma 711 cenți (79*9=711)
Avem a=2, 3, 4, 6, 8
Primul termen al adunării va fi unul dintre cele 4 numere: 158, 316, 474 sau 632.
711-158=553=7*79
711-316=395=5*79
711-474=237=3*79
711-632=79=1*79
Se observă că 158 şi 632 nu sunt numere valide, deoarece nu au multipli factorilor primi specificați mai sus.
Vom analiza cazul X=316.
711-316=395, deci Y+Z+W=395 şi Y*Z*W=2.250.000 = 2^4*3^2*5^6.
Y va trebui să fie multiplu de 2, Z multiplu de 3, iar W multiplu de 5.
Rezultă că W va fi de forma ab5, deci Y+Z va fi de forma cd0.
Avem următoarele cazuri:
Y (ef0) şi Z (gh0) cu g+h+0 multiplu de 3, rezultă Z=120 sau 240
Y (ef2) şi Z (gh8) cu g+h+8 multiplu de 3, rezultă Z=108
Y (ef4) şi Z (gh6) cu g+h+6 multiplu de 3, rezultă Z=126
Y (ef6) şi Z (gh4) cu g+h+4 multiplu de 3, rezultă Z=114
Y (ef8) şi Z (gh2) cu g+h+2 multiplu de 3, rezultă Z=204, 222, 402.
Analizăm cazul Z=120, iar Y (ef0)
Avem 711-316-120=275, deci Y+W=275 şi Y*W=18.750 = 2*3*5^5
Ştim că Y este de forma (ef0), iar W va fi de forma (ab5)
Singurele 2 numere care satisfac aceste relații sunt: Y=150 şi W=125.
Verificare:
X=316
Y=150
Z=120
W=125
316+150+120+125=711, 316*150*120*125=711.000.000
Cele 4 prețuri sunt: 3,16 $, 1,50 $, 1,20 $, 1,25 $
Cristian Ciobanu adaugă:
Solutia este unica, daca consideram ca un produs are costul in format m,nk; Am probat aceasta si cu un programel scris in Oracle SQL, prin care iau toate combinatiile 1..711 de 4 numere si le verific:
set serveroutput on size 1000000;
DECLARE
j NUMBER;
begin
for x in 1..711 loop
for y in 1..711 loop
for z in 1..711 loop
for t in 1..711 loop
IF x+y+z+t = 711 and x*y*z*t = 711000000 then
dbms_output.put_line(x||' '||y||' '||z||' '||t);
end if;
end loop;
end loop;
end loop;
end loop;
end;
/
120 125 150 316
Totuşi Dan Florescu a găsit o soluţie diferită: 2.08, 1.56, 0.83 şi 2.64.
Este o soluţie practică, bazată pe facilitatile Excelului. Ea ignoră ultimele cifre de la înmulţire, deoarece produsul acestor patru numere este 7.11000576.