Попытка поиска выигрышной стратегии может быть сделана при метода, получившего название "бэкрекинг" (backtracking - обратное прослеживание). рассматриваем финальную позицию для второго студента. у него должно оставаться от 1 до 4 карточек, чтобы он мог их все забрать и не оставить карточек первому студенту. следовательно, у первого студента должно быть ровно 5 карточек. забрав от 1 до 4 карточек, он оставит второму студенту как раз требуемое количество карточек. чтобы у первого студента осталось 5 карточек, второй студент должен иметь от 6 до 9 карточек, т.е. первый студент для этого должен делать выбор из 10 карточек. и так далее. выигрышная стратегия второго студента состоит в том, чтобы предоставлять первому студенту количество карточек, кратное 5. но исходное количество карточек равно 20; это число кратно 5, следовательно второй студент всегда выигрывает, применяя описанную стратегию (она же - алгоритм).
ka-shop
28.05.2020
Const m1 = 30; n1 = 30; var a: array[1..m1, 1..n1] of integer; m, n, i, j, t, imin, jmin, mn: integer; begin write('введите через пробел число строк и столбцов массива: '); readln(m, n); randomize; writeln('исходный массив'); mn : = 32767; for i : = 1 to m do begin for j : = 1 to n do begin t : = random(101) - 50; write(t: 5); if mn > t then begin mn : = t; imin : = i; jmin : = j end; a[i, j] : = t end; writeln end; writeln('минимальный элемент a[', imin, ',', jmin, ']=', mn) end. тестовое решение: введите через пробел число строк и столбцов массива: 6 8 исходный массив -35 33 44 32 37 31 -21 24 42 -27 45 -30 -10 25 -6 -1 1 -40 -12 47 24 -31 -29 5 35 -15 23 40 -41 19 -37 -35 4 24 -47 -47 50 27 21 -23 -44 35 -36 -46 30 -21 -50 -48 минимальный элемент a[6,7]=-50
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
5известных имен в информатике. фотографии этих людей и немного информации о них.