pbinfo #4456capitolul 2 · Cifre și prime prime4.in → prime4.outMai greapunctajul tău: 100p

Prime4

Numărul prim care apare cel mai des

01

Enunțul pe scurt

Rezumat. Textul complet e pe pbinfo.

În prime4.in ai n numere, toate de 3 cifre (între 100 și 999).

Găsești numărul prim care apare de cele mai multe ori. Dacă mai multe apar la fel de des, îl alegi pe cel mai mic.

ComparațieCa la un vot: fiecare număr citit e un vot pentru el. Faci un tabel cu 1000 de căsuțe (câte una pentru fiecare număr posibil) și pui o liniuță în căsuța numărului de fiecare dată când apare. La final te uiți doar la căsuțele numerelor prime.
Primeștiprime4.in: n, apoi n numere de 3 cifre.
Afișeziprime4.out: numărul prim cu cele mai multe apariții (la egalitate, cel mai mic).
Problemă cu fișiereCitești din prime4.in și scrii în prime4.out, apoi fout.Close(). Lecția despre fișiere
02

Exemplu

Fă-l întâi pe hârtie, fără cod.

prime4.in
8
101 103 101 200 103 999 103 101
prime4.out
101
De ce101 apare de 3 ori, 103 tot de 3 ori. La egalitate îl alegem pe cel mai mic: 101. (200 și 999 nu sunt prime.)

Exemplul de aici e făcut pentru platformă și verificat cu soluția. Exemplul oficial îl găsești în enunțul de pe pbinfo.

Încă un test
intrare 2
5
997 997 113 113 113
ieșire 2
113
03

Animație pas cu pas

Mergi cu săgețile sau apasă Pornește. Poți pune și numerele tale.

numere citite
101
0
103
1
101
2
200
3
103
4
999
5
103
6
101
7
fr[x] (doar căsuțele folosite)
(gol)
1/14Vectorul de frecvență fr are 1000 de căsuțe, toate 0. Arătăm doar căsuțele care se umplu.
fișierul prime4.out
elementul curent bun / păstrat respins comparat ținut minte
04

Indicii

Deschide doar câte ai nevoie.

05

Scrie și rulează

Codul rulează direct în browser. „Verifică pe teste” compară rezultatul ca evaluatorul pbinfo.

compilatorul pornește la prima rulare
fișierul prime4.in
fișierul prime4.out
Apasă Rulează ca să vezi rezultatul.
06

Ideea, pe pași

  1. fr[x]++ pentru fiecare număr citit.
  2. Parcurgi x = 100…999.
  3. Dacă x e prim, a apărut și are frecvență mai mare decât răspunsul curent, x devine răspuns.
  4. Scrii răspunsul.
07

Soluția comentată

Verificată automat pe toate testele de mai sus.

Soluția e ascunsă

Încearcă întâi singur(ă), cu indiciile și editorul de mai sus. Când vrei să compari sau te-ai blocat, deschide-o.

08

Greșeli de evitat

La încercarea ta100 de puncte.
  • La egalitate vrei cel mai mic, deci parcurgi crescător și folosești >, nu >=.
  • Vectorul de frecvență trebuie să aibă loc pentru 999, deci mărimea e 1000.
09

Întrebări

Două întrebări scurte. Se salvează cel mai bun scor.

ÎntrebăriÎntrebarea 1 din 2

Se citesc 5, 3, 5, 5. Cât e fr[5] după citire?