Academos
  1. Subiecte
  2. Bacalaureat
  3. Informatică mate-info, C
  4. 2023 iunie-iulie
  5. Subiectul al III-lea, 3. a)

Subiectul al III-lea, 3. a)

Bacalaureat 2023, Informatică mate-info, C, sesiunea iunie-iulie.

Un număr natural x este numit prefix al unui număr natural y dacă se obține din acesta prin eliminarea a cel puțin unei cifre de la dreapta sa, și este numit sufix al lui y dacă se obține din acesta prin eliminarea a cel puțin unei cifre de la stânga sa. Exemplu: 15 este prefix pentru 154 sau 1521, este sufix pentru 3415 sau 5115, dar nu este nici prefix, nici sufix pentru 15. Fișierul bac.txt conține maximum 10⁶ numere naturale din intervalul [10,10⁴), separate prin câte un spațiu. Se cere să se afișeze pe ecran numărul valorilor de două cifre care apar de același număr de ori ca sufix, respectiv ca prefix al numerelor din șirul aflat în fișier. Proiectați un algoritm eficient din punctul de vedere al timpului de executare. Exemplu: dacă fișierul are conținutul 342 1684 2134 5434 111 98 98 3405 3412 7016 8634 1010 102 310 se afișează pe ecran: 4 (pentru valorile 10, 11, 16, 34).

Identificatorii utilizați în rezolvări trebuie să respecte precizările din enunț (bold), iar în lipsa unor precizări explicite, notațiile trebuie să corespundă cu semnificațiile asociate acestora (eventual în formă prescurtată). Datele de intrare se consideră corecte, validarea lor nefiind necesară.

Cerința

2 puncte

Descrieți în limbaj natural algoritmul proiectat, justificând eficiența acestuia. (2p.)

Arată baremul

Reguli generale:

SUBIECTUL al III-lea, 3. a. Pentru răspuns corect - 2p. - descriere coerentă a algoritmului, conform cerinței (*) - 1p. - elemente de eficiență justificate, conform cerinței - 1p. (*) Se acordă punctajul chiar dacă algoritmul ales nu este eficient.

O soluție posibilă utilizează doi vectori de frecvență, pf și sf, în care pf[i] memorează numărul de apariții ale prefixului i în numerele din fișier, iar sf[i] memorează numărul de apariții ale sufixului i în numerele din fișier. Pe parcursul citirii datelor, se determină, pentru fiecare număr x citit (x>99), sufixul (x%100), respectiv prefixul ([x/10] sau [x/100], în funcție de numărul de cifre ale lui x) și se actualizează corespunzător cei doi vectori de frecvență. După citirea tuturor numerelor se contorizează toate valorile x∈[10,99] pentru care sf[x]=pf[x] și sf[x]≠0.

Același item în alte lucrări

Sesiuni de examen

2026
2025
2024
2023
2022
2021

Simulări, modele de subiect și subiecte de rezervă

2026
2025

Toate variantele itemului Subiectul al III-lea, 3. pe o singură pagină

Exersează zilnic cu Academos

Aplicația pentru Evaluarea Națională și Bac. În curând pe:

  • App Store
  • Google Play