ConcursC++17

prime

Pentru un număr natural NN considerăm șirul: 00, 11, 22, …\dots, NN.

Cerință

  1. Se dau QQ perechi de numere naturale de forma (a,b)(a,b). Pentru fiecare pereche se cere să se determine numărul de numere prime care află în secvența de numere consecutive: aa, a+1a+1, a+2a+2, …\dots, bb.
  2. Se dau QQ numere naturale p1p_1, p2p_2, …\dots, pQp_Q. Pentru fiecare număr pip_i se cere să se determine numărul secvențelor aa, a+1a+1, a+2a+2, …\dots, bb din șirul 00, 11, …\dots, NN care conțin câte pip_i numere prime (1≤i≤Q1 \leq i \leq Q).

Date de intrare

Fișierul de intrare prime.in conține pe prima linie trei numere naturale CC NN QQ, separate prin câte un spațiu, unde CC este cerința care trebuie rezolvată (11 sau 22), NN și QQ au semnificația de mai sus.

Dacă C=1C=1, atunci pe fiecare dintre următoarele QQ linii se află câte două numere naturale aa bb, separate
prin spațiu, reprezentând extremitățile unei secvențe de numere naturale consecutive.

Dacă C=2C=2, atunci pe următoarele QQ linii se află câte un număr natural pip_i (1≤i≤Q1 \leq i \leq Q), cu semnificația din enunț.

Date de ieșire

Fișierul de ieșire prime.out conține QQ numere, fiecare pe câte un rând, în conformitate cu cerința CC.

Restricții și precizări

  • C∈{1,2}C \in \{1, 2\};
  • 1≤N,Q≤50 0001 \leq N,Q \leq 50 \ 000;
  • 0≤a≤b≤N0 \leq a \leq b \leq N;
  • 0≤pi≤N0 \leq p_i \leq N, 1≤i≤Q1 \leq i \leq Q.
#ScorRestricții
140C=1C = 1, 1≤N,Q≤10 0001 \leq N,Q \leq 10 \ 000
210C=1C = 1, 10 000<N,Q≤50 00010 \ 000 < N,Q \leq 50 \ 000
330C=2C = 2, 1≤N,Q≤10 0001 \leq N,Q \leq 10 \ 000
420C=2C = 2, 10 000<N,Q≤50 00010 \ 000 < N,Q \leq 50 \ 000

Exemplul 1

prime.in

1 10 3 
0 10 
3 3 
8 10

prime.out

4 
1 
0

Explicație

C=1C=1, N=10N=10, Q=3Q=3.
Se rezolvă cerința 11.

În secvența 0…100 \dots 10 există 44 numere prime: 22, 33, 55, 77.
În secvența 3…33 \dots 3 există un singur număr prim, numărul 33.
În secvența 8…108 \dots 10 nu există numere prime.

Exemplul 2

prime.in

2 10 2 
4 
1 

prime.out

12 
17 

Explicație

C=2C=2, N=10N=10, Q=2Q=2.

Se rezolvă cerința 22.

Există câte 44 numere prime în fiecare dintre următoarele 1212 secvențe: 0…100 \dots 10, 1…101 \dots 10, 2…102 \dots 10, 0…90 \dots 9, 1…91 \dots 9, 2…92 \dots 9, 0…80 \dots 8, 1…81 \dots 8, 2…82 \dots 8, 0…70 \dots 7, 1…71 \dots 7, 2…72 \dots 7.

Există câte un singur număr prim în fiecare dintre următoarele 1717 secvențe: 0…20 \dots 2, 1…21 \dots 2, 2…22 \dots 2, 3…33 \dots 3, 3…43 \dots 4, 4…54 \dots 5, 5…55 \dots 5, 4…64 \dots 6, 5…65 \dots 6, 6…76 \dots 7, 6…86 \dots 8, 6…96 \dots 9, 6…106 \dots 10, 7…77 \dots 7, 7…87 \dots 8, 7…97 \dots 9, 7…107 \dots 10.

Sursă și autori

ONI 2025, clasele 6. Ionel-Vasile Piț-Rada.

Enunț din Kilonova, sub licența CC-BY-NC-SA-4.0, conform politicii sursei. Adaptări de prezentare și tipografie. Exemplele, formulele și figurile originale sunt păstrate.

RÂNDUL TĂU

Trimite o soluție

Editor de cod

Setul original de teste și regulile de punctare sunt în curs de verificare. Trimiterea pentru evaluare va fi disponibilă după această verificare.

Se verifică autentificarea…

Un pas, apoi următorul.Înapoi sus ↑