Intrebari interviu Programator PHP Junior
Moderatori: cristi, icsfails, Moderatori
Problema:
Sunt N cutii de bomboane.
In cutia i sunt i bomboane. (adica in cutia 1 e o bomboana, in cutia 2->2 bomboane etc).
Sa se realizeze un algoritm (in orice limbaj, chiar si pseudocod) in care sa afiseze in cate moduri se pot imparti cutiile la 2 frati astfel incat nr de bomboane sa fie egale. Bomboanele nu se pot scoate din cutii sau mutate.
La un interviu pentru un internship mi-a picat problema asta.
Sunt N cutii de bomboane.
In cutia i sunt i bomboane. (adica in cutia 1 e o bomboana, in cutia 2->2 bomboane etc).
Sa se realizeze un algoritm (in orice limbaj, chiar si pseudocod) in care sa afiseze in cate moduri se pot imparti cutiile la 2 frati astfel incat nr de bomboane sa fie egale. Bomboanele nu se pot scoate din cutii sau mutate.
La un interviu pentru un internship mi-a picat problema asta.
- Birkoff
- Senior Member
- Mesaje: 6380
- Membru din: Joi Mar 18, 2004 2:34 pm
- Localitate: Bucuresti
- Contact:
tocmai vin de la un interviu si una din intrebari era asta
sincer a fost singura intrebare la care nu am stiut ce sa raspund, neavand treaba cu asa ceva pana acum in php.
un tren pleaca dintr-o statie si merge constant cu 40 km la ora.
un alt tren pleaca din alta statie in directie opusa si merge cu 80 km la ora.
de pe primul tren zboara o musca catre al doilea tren si merge cu viteza de 100km pe ora. cand musca ajunje la celalalt tren se intoarce inapoi tot cu aceeasi viteza si repeta pasii pana cand cele 2 trenuri se intalnesc.
cati kilometrii a parcurs musca?
sincer a fost singura intrebare la care nu am stiut ce sa raspund, neavand treaba cu asa ceva pana acum in php.
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
si acum ca am vazut si problema lui anonym...
am observat ca daca ii dam primului primele 2 cutii (1 bobo + 2 bobo) si ii dam celui de-al doilea cutia 3 (3 bobo) se pastreaza egalitatea.
dupa care:
3 cutii primului (4+5+6) - 2 cutii celui de-al doilea (7+8 )
4 cutii primului (9+10+11+12) - 3 cutii celui de-al doilea (13+14+15)
.
.
.
etc
am observat ca daca ii dam primului primele 2 cutii (1 bobo + 2 bobo) si ii dam celui de-al doilea cutia 3 (3 bobo) se pastreaza egalitatea.
dupa care:
3 cutii primului (4+5+6) - 2 cutii celui de-al doilea (7+8 )
4 cutii primului (9+10+11+12) - 3 cutii celui de-al doilea (13+14+15)
.
.
.
etc
distanta parcursa de musca este de 5/2 * A unde A este distanta parcursa de trenul ce merge cu 40km/h.
Musca merge constant cu 100km/h deci ca sa aflam distanta noi trebuie sa stim cat timp zboara asa. stim formula v = d/t =>d = v*t => d = 100*t
iar t = A/40 = B/80 unde A+B era distanta dintre trenuri cand musca si-a luat zborul. d=100*A/40=5/2*A.
Musca merge constant cu 100km/h deci ca sa aflam distanta noi trebuie sa stim cat timp zboara asa. stim formula v = d/t =>d = v*t => d = 100*t
iar t = A/40 = B/80 unde A+B era distanta dintre trenuri cand musca si-a luat zborul. d=100*A/40=5/2*A.
Listez si eu cateva intrebari pe care le-am pus.
Nu cautam incepator, asa ca unele erau ceva mai delicate.
Incepeam cu intrebari simple si in functie de cunostinte escaladam. Cum lucram cu framework-uri si OOP, majoritatea se bazau pe asta.
- diferenta intre o clasa si un obiect
- tipurile de vizibilitati: public, protected, private; diferente si cand se utilizeaza fiecare
- ce e o interfata? dar o clasa abstracta? cand se folosesc
- ce e un streamWrapper
- framework-uri cu care a lucrat.. pros & cons; daca a lucrat cu un ORM
- SPL
- MVC - scurta descriere a layerelor
- 3 design patterns si 3 anti patterns
- 3 metode de refactoring
- composition vs inheritance
- dependency injection
- cu ce sistem de versionare a lucrat
- cum stochezi un arbore in baza de date
- php 5.3: namespaces, closures etc
Nu neaparat in ordinea astea, deoarece era o discutie libera.
Nu cautam incepator, asa ca unele erau ceva mai delicate.
Incepeam cu intrebari simple si in functie de cunostinte escaladam. Cum lucram cu framework-uri si OOP, majoritatea se bazau pe asta.
- diferenta intre o clasa si un obiect
- tipurile de vizibilitati: public, protected, private; diferente si cand se utilizeaza fiecare
- ce e o interfata? dar o clasa abstracta? cand se folosesc
- ce e un streamWrapper
- framework-uri cu care a lucrat.. pros & cons; daca a lucrat cu un ORM
- SPL
- MVC - scurta descriere a layerelor
- 3 design patterns si 3 anti patterns
- 3 metode de refactoring
- composition vs inheritance
- dependency injection
- cu ce sistem de versionare a lucrat
- cum stochezi un arbore in baza de date
- php 5.3: namespaces, closures etc
Nu neaparat in ordinea astea, deoarece era o discutie libera.
Intrebare
Salut si imi cer scuze daca s-a mai pus intrebarea asta inainte, stiu ca e enervant sa raspunzi de 5 ori la aceeasi intrebare dar eu nu am mai gasit-o.
Nu sunt familiarizat cu java si sper sa nu fie foarte tampita intrebarea:
Ok, am un site pe un domeniu free in care am doar un iframe. Problema e ca in sursa frame-lui vreau sa intruduc un javascript. (Cine vrea sa ma ajute si vrea sa vada scriptul va rog un pm.) Se poate sa fentez cuma scriptul?
Nu sunt familiarizat cu java si sper sa nu fie foarte tampita intrebarea:
Ok, am un site pe un domeniu free in care am doar un iframe. Problema e ca in sursa frame-lui vreau sa intruduc un javascript. (Cine vrea sa ma ajute si vrea sa vada scriptul va rog un pm.) Se poate sa fentez cuma scriptul?
- Birkoff
- Senior Member
- Mesaje: 6380
- Membru din: Joi Mar 18, 2004 2:34 pm
- Localitate: Bucuresti
- Contact:
mdubluv ai pus si tu intrebarea intr-un topic in care nu isi are rostu, deschide un topic nou in categoria potrivita, aici doar continui discutia inceputa in acest topic.
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.
-
- PHPRomania Supporter
- Mesaje: 13
- Membru din: Mar Mar 26, 2013 9:44 am
- Contact:
Re: Intrebari interviu Programator PHP Junior
Foarte util. Mersi.
Foliile Tuning Auto fac diferenta ! http://www.leykom.ro/ro/folii-pentru-tuning-auto-179-c
-
- PHPRomania Supporter
- Mesaje: 16
- Membru din: Mie Aug 03, 2016 11:33 pm
Re:
vectorialpx scrie:Avem si noi interviu la firma si, avem un test unde discutam pe baza unor chestii. Exemplu de intrebare:Care variabile sunt declarate corect:
${"a"} = 2;
$_b = 8;
$2sc = 23;
&$e = 2;
$f = &$g;
$_b = 8 (in caz in care $_b exista..)
$f = &$g; // teoretic e corect declarata, dar e pointer.
&$e = 2; // si asta e corect
$2sc = 23; // daca exista variabila.. edit: sa mori tu ca nu merge sa pui numere in fata numelui =)) wtf
mere?
anonym scrie:Care este avantajul in a declara o proprietate/metoda a unei clase protected/private in loc sa le declari pe toate public?
o functie protected poate fii apelata doar in clasa.
o functie privata este strict in clasa lui (protected poate fii apelata daca e extinsa in alta clasa)
teachme scrie:si acum ca am vazut si problema lui anonym...
am observat ca daca ii dam primului primele 2 cutii (1 bobo + 2 bobo) si ii dam celui de-al doilea cutia 3 (3 bobo) se pastreaza egalitatea.
dupa care:
3 cutii primului (4+5+6) - 2 cutii celui de-al doilea (7+8 )
4 cutii primului (9+10+11+12) - 3 cutii celui de-al doilea (13+14+15)
.
.
.
etc
cred ca n-ai inteles.
ai un sir de numere n.
din care n->n (adica nr cutiei are atatea nr de bomboane)
din algoritm-ul tau, la primul exemplu ai 5 cutii vad.
deci:
1->1
2->2
3->3
4->4
5->5
cum ai ajuns tu de la 4 pana la 8 ?
uite varianta mea de alogirtm.
Cod: Selectaţi tot
$n = valoare;
$suma = 0;
$copil1_array = $copil2_array = array();
for ( $i = 1; $i <= $n; $i++ ) {
$suma += $i;
}
if ($suma % 2 != 0) return;
$impartirea = intval($n / 2);
if($impartirea % 2 == 0) {
for ( $j = $n; $j > ($n-($impartirea/2)) ; $j-- ) {
array_push($copil1_array, $j);
}
for ( $j = 1; $j <= ($impartirea/2); $j++ ) {
array_push($copil1_array, $j);
}
for ( $j = ($impartirea/2)+1; $j < ($n-($impartirea/2)); $j++ ) {
array_push($copil2_array, $j);
}
} else {
for ( $j = n; $j >= $n-intval($impartirea/2); $j-- ) {
array_push($copil1_array, $j);
}
for ( $j = 1; $j <= intval($impartirea/2); $j++) {
array_push($copil1_array, $j);
}
for ( $j = intval($impartirea/2)+1; $j < $n-intval($impartirea/2); $j++ ) {
array_push($copil2_array, $j);
}
}
ca script-ul sa mearga n >= 4 && suma(1+2+..+n) trebuie sa fie para
-
- Senior Member
- Mesaje: 1264
- Membru din: Mar Iun 22, 2010 3:17 pm
Re: Intrebari interviu Programator PHP Junior
Dude, vezi ca raspunzi unor post-uri de acum CINCI ani! Cei care le-au postat poate au si iesit la pensie.
Facusi un canal de php pe freenode - ##php-ro : https://webchat.freenode.net/
-
- PHPRomania Supporter
- Mesaje: 16
- Membru din: Mie Aug 03, 2016 11:33 pm
Re: Intrebari interviu Programator PHP Junior
nevvermind scrie:Dude, vezi ca raspunzi unor post-uri de acum CINCI ani! Cei care le-au postat poate au si iesit la pensie.
well, sorry. dar mi-a atras atentia topic ul.
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 14 vizitatori