0563 - Fast Food 1

From Bitnami MediaWiki
Revision as of 18:01, 4 January 2024 by Corjuc Eunice (talk | contribs) (Pagină nouă: = Cerința = Fast-food-ul de la colțul străzii are <code>n</code> clienți. Pentru fiecare client se cunoaște momentul în care intră în fast-food și momentul în care iese, ambele fiind exprimate în minute, numărate de la începutul perioadei de funcționare. Gigel, patronul acestui fast-food, dorește să afle care este numărul maxim de clienți aflați simultan în restaurant. = Date de intrare = Programul citește de la tastatură numerele <code>n</code>, iar ap...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința[edit | edit source]

Fast-food-ul de la colțul străzii are n clienți. Pentru fiecare client se cunoaște momentul în care intră în fast-food și momentul în care iese, ambele fiind exprimate în minute, numărate de la începutul perioadei de funcționare. Gigel, patronul acestui fast-food, dorește să afle care este numărul maxim de clienți aflați simultan în restaurant.

Date de intrare[edit | edit source]

Programul citește de la tastatură numerele n, iar apoi n perechi de numere naturale x y , reprezentând montul intrării, respectiv momentul ieșirii fiecărui client din restaurant.

Date de ieșire[edit | edit source]

Programul va afișa pe ecran numărul P, reprezentând valoarea cerută.

Restricții și precizări[edit | edit source]

  • 1 ≤ n ≤ 1000

Exemplul 1[edit | edit source]

Input:

5

5 7

10 11

10 13

6 8

7 9

Output:

3

Explicație:

La momentul 7 în restaurant se află 3 persoane.

Exemplul 2[edit | edit source]

99999999999999

5 7

10 11

10 13

6 8

7 9

Output:

Constrangeri neindeplinite

Rezolvare[edit | edit source]

<syntaxhighlight lang="python3" line="1"> def ver(n):

   if not(1<=n<=1000):
       print("Constrangeri neindeplinite")
       exit()

n = int(input()) ver(n) v = [0] * 10005

hmax = 0 hmin = 10005

for _ in range(n):

   x, y = map(int, input().split())
   if x < hmin:
       hmin = x
   if y > hmax:
       hmax = y
   for j in range(x, y + 1):
       v[j] += 1

max_val = v[hmin] for i in range(hmin, hmax + 1):

   if max_val < v[i]:
       max_val = v[i]

print(max_val)

</syntaxhighlight>