Скачать презентацию Решение олимпиадны х задач Учитель информатики МБОУ СОШ Скачать презентацию Решение олимпиадны х задач Учитель информатики МБОУ СОШ

6c459f4a8e3e49e44ed741095ff14c73.ppt

  • Количество слайдов: 25

Решение олимпиадны х задач Учитель информатики МБОУ «СОШ № 23 с углубленным изучением отдельных Решение олимпиадны х задач Учитель информатики МБОУ «СОШ № 23 с углубленным изучением отдельных предметов» Энгельсского муниципального района Саратовской области Пуликова Светлана Алексеевна

Незванные гости За день к школьнику Васе пришло N незванных гостей. Вася записал время Незванные гости За день к школьнику Васе пришло N незванных гостей. Вася записал время прихода и ухода каждого из гостей. По этим данным определите, какое максимальное число гостей одновременно находилось дома у Васи. Входные данные • Первая строка входных данных содержит натуральное число N – количество пришедших гостей. 0

пример вре мя гост и 0 1 2 3 4 5 пример вре мя гост и 0 1 2 3 4 5

1 -й гость время 0 1 2 3 4 гости 1 1 5 1 -й гость время 0 1 2 3 4 гости 1 1 5

2 -й гость время 0 1 2 3 4 5 гости 1 1 2 2 -й гость время 0 1 2 3 4 5 гости 1 1 2 2 1

3 -й гость время 0 1 2 3 4 5 гости 1 2 2 3 -й гость время 0 1 2 3 4 5 гости 1 2 2 1

4 -й гость время 0 1 2 3 4 5 гости 1 1 2 4 -й гость время 0 1 2 3 4 5 гости 1 1 2 3 2

Результат время 0 1 2 3 4 5 гости 1 1 2 3 2 Результат время 0 1 2 3 4 5 гости 1 1 2 3 2

Program z 3; Const c=15000; Var s: array [0. . c] of longint; n, Program z 3; Const c=15000; Var s: array [0. . c] of longint; n, j, i, t 1, t 2, Max: integer; Begin Assign (input, 'input. txt'); Assign (output, 'output. txt'); Reset (input); Rewrite (output); Readln (n); For i: =1 to c do s[i]: =0; For i: =1 to n do begin Readln (t 1, t 2); For j: =t 1 to t 2 do s[j]: =s[j]+1; End; Max: =0; For i: =1 to c do If s[i]>Max then Max: =s[i]; Write (Max); Close (input); Close (output); End.

0 1 2 … 100000 0 1 2 … 100000

0 1 2 … 1 100000 2 3 4 5 6 7 0 1 2 … 1 100000 2 3 4 5 6 7

0 1 2 … 1 100000 2 15000 элементов 3 4 5 6 7 0 1 2 … 1 100000 2 15000 элементов 3 4 5 6 7

0 1 2 … 1 100000 2 3 4 5 6 7 15000 элементов 0 1 2 … 1 100000 2 3 4 5 6 7 15000 элементов 0 1 2 … 15000

0 1 2 … 100000 2 1 3 4 5 6 7 Максимум M[1] 0 1 2 … 100000 2 1 3 4 5 6 7 Максимум M[1] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[2] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[2] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[3] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[3] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[4] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[4] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[5] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[5] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[6] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[6] 0 1 2 … 15000

0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[7] 0 1 2 … 1 100000 2 3 4 5 6 7 Максимум M[7] 0 1 2 … 15000

Program z 3 f; Const c=15000; Var s: array [0. . c] of longint; Program z 3 f; Const c=15000; Var s: array [0. . c] of longint; m: array[1. . 7]of longint; n, j, i, t 1, t 2, Max, t 1 f, t 2 f: longint; pf: boolean; f 1, f 2: text; k: integer; Begin Assign (input, 'input. txt'); Assign (output, 'output. txt'); Assign (f 1, 'f 1. txt'); Assign (f 2, 'f 2. txt'); Reset (input); Rewrite (output); Rewrite (f 1); Readln (n); pf: =false; For i: =1 to c do s[i]: =0;

For i: =1 to n do begin Readln (t 1, t 2); If t For i: =1 to n do begin Readln (t 1, t 2); If t 1>c then begin pf: =true; t 1 f: =t 1 -c; t 2 f: =t 2 -c; writeln(f 1, t 1 f, ' ', t 2 f) end else begin if t 2>c then begin pf: =true; t 1 f: =1; t 2 f: =t 2 -c; t 2: =c; writeln(f 1, t 1 f, ' ', t 2 f); end; For j: =t 1 to t 2 do s[j]: =s[j]+1; End; end; Max: =0; For i: =1 to c do If s[i]>Max then Max: =s[i]; m[1]: =max; close(f 1); for k: =1 to 6 do begin reset(f 1); rewrite(f 2); pf: =false; for i: = 1 to c do s[i]: =0;

While not eof(f 1) Do begin Readln (f 1, t 2); If t 1>c While not eof(f 1) Do begin Readln (f 1, t 2); If t 1>c then begin pf: =true; t 1 f: =t 1 -c; t 2 f: =t 2 -c; writeln(f 2, t 1 f, ' ', t 2 f) end else begin if t 2>c then begin pf: =true; t 1 f: =1; t 2 f: =t 2 -c; t 2: =c; writeln(f 2, t 1 f, ' ', t 2 f); end; For j: =t 1 to t 2 do s[j]: =s[j]+1; End; end; Max: =0; For i: =1 to c do If s[i]>Max then Max: =s[i]; m[k+1]: =max; close(f 1); close(f 2); reset(f 2); rewrite(f 1);

While not eof(f 2) do begin readln(f 2, t 1 f, t 2 f); While not eof(f 2) do begin readln(f 2, t 1 f, t 2 f); writeln(f 1, t 1 f, ' ', t 2 f); end; close(f 2); close(f 1); end; max: =m[1]; for i: =1 to 7 do if m[i]>max then max: =m[i]; Write (Max); Close (input); Close (output); End.

Спасибо за внимание. Спасибо за внимание.