Rezolvare Simulare BAC 2016 Informatica (MI) – Subiectul al III-lea problema 4
Mai jos puteti gasi enuntul si rezolvarea problemei 4 de la subiectul al III-lea de la simularea examenului de bacalaureat la informatica (mate-info) din anul 2016.
Rezolvare:
Spor la lucru! Daca aveti intrebari nu ezitati sa le lasati in comentarii, va vom raspunde cat de repede putem 🙂
Pentru o astfel de rezolvare iti dă la bac punctaj maxim ? Caci , eu tot mai des vad pe bareme solutii diferite de ce fac eu , cu toate ca a mele sunt practic mereu ca cele postate de voi . Se zice , ca se da punctaj maxim pe un algoritm de O(n) asta totusi mai mult , e O(n + 900 ) . Imi da-ti o explicatie , rog frumos !
Salut. Asta este o rezolvare eficienta din punct de vedere al timpului. Notatia big O are o definitie care nu tine cont de constante, fiind o notatie asimptotica (ne intereseaza comportamentul programului pentru n foarte mare). Astfel, O(n)=O(n+900)=O(2*n). Acel 900 este aproape insignifiant in comparatie cu inputul (pentru n foarte mare) si deci nu afecteaza. Pentru n mic, notiunea de eficienta este oarecum banala, toate programele ruland foarte rapid.
Vă salut! Îmi puteți spune și mie vă rog de ce în sintaxa if(frecv[I] & & frecv2[I]) este “&&” în loc de egal-egal?
Nu, sunt doua conditii. “&&” inseamna AND. Deci tradus ar veni “daca frecv[i] diferit de 0 si frecv2[i] diferit de 0”.