50 руководство команды «байтсбург юнайтед» после очередного поражения уволило предыдущего главного тренера. на его место был назначен бывший игрок этой команды, успешно зарекомендовавший себя в качестве тренера за рубежом. в свой тренерский штаб новый тренер пригласил в качестве аналитика специалиста по продвинутой статистике. и тот сразу же предложил новую модель внутрикомандной психологии. как известно, для взаимоотношений в команде часто используют термин «командная »; от аналитика поступило предложение записывать преобразования в структуре команды в виде своеобразных реакций. роли игроков в команде обозначили заглавными латинскими буквами: например, f3ad10a обозначает группу из трёх форвардов, вице-капитана, 10 защитников и ещё одного вице-капитана. соответственно, если требуется выбрать из этой группы наибольшее количество групп в составе вице-капитана, форварда и трёх защитников, то таких групп будет две (так как для третьей не хватит вице-капитана), то есть из группы f3ad10a можно получить две группы afd3. а вот групп fd3 можно получить целых 3. иначе говоря, суммарное количество игроков каждой роли в исходной группе не должно быть меньше суммарного числа игроков данной роли в группах, на которые происходит разбиение. на психологический тренинг пришли несколько одинаково структурированных групп игроков. вам задан тип исходной группы игроков, количество этих групп и тип команды, требуемый для психологических тренингов. ваша — найти максимальное количество команд, на которое можно разделить пришедших на занятия игроков. формат ввода первая строка входных данных содержит структуру группы — непустую строку s длиной не более 2500 символов, и количество входных групп n ( 1 ≤ n ≤ 1 0 3 ). строка состоит из заглавных латинских букв и цифр. после каждой буквы может стоять не более трёх цифр, первой цифрой после буквы не может быть 0. число, записанное после буквы, обозначает количество игроков соответствующей роли в группе. если число опущено (сразу после буквы идёт другая буква), то считается, что соответствующее число равно 1 (при этом явное указание единицы тоже возможно. вторая строка задаёт структуру команды для тренинга в аналогичном формате. формат вывода выведите одно число — максимальное количество команд для тренинга указанной структуры, которое может получиться при разбиении пришедших n групп.
m = 10
n = 15
DIM a(1 TO m, 1 TO n) AS INTEGER
DIM x(1 TO n) AS INTEGER, y(1 TO m) AS INTEGER
RANDOMIZE TIMER
CLS
PRINT "Исходная матрица"
FOR i = 1 TO m
FOR j = 1 TO n
a(i, j) = INT(99 * RND)
PRINT USING "###"; a(i, j);
NEXT j
PRINT
NEXT i
INPUT "Строка для Х и столбец для Y (через запятую): ", p, q
PRINT "Вектор-строка Х"
FOR j = 1 TO n
x(j) = a(p, j)
PRINT USING "###"; x(j);
NEXT j
PRINT
PRINT "Вектор-столбец Y"
FOR i = 1 TO m
y(i) = a(i, q)
PRINT USING "###"; y(i);
NEXT i
PRINT
Тестовое решение:
Исходная матрица
51 91 87 95 48 54 64 92 2 91 84 56 60 87 6
96 55 81 11 46 42 38 14 40 73 33 97 16 90 65
65 41 52 1 30 62 68 32 16 86 80 72 94 76 50
63 44 84 83 19 29 95 75 88 9 13 78 45 72 51
98 98 93 70 19 36 16 21 38 87 59 26 48 11 52
77 24 11 91 68 49 72 25 39 54 31 55 57 92 55
79 19 37 67 40 72 91 76 13 75 47 48 12 64 44
87 24 62 73 58 65 2 90 21 63 79 67 92 68 27
57 42 82 21 94 1 19 1 12 1 84 27 86 42 89
54 12 78 75 33 87 34 78 38 50 40 11 19 6 2
Строка для Х и столбец для Y (через запятую): 4,8
Вектор-строка Х
63 44 84 83 19 29 95 75 88 9 13 78 45 72 51
Вектор-столбец Y
92 14 32 75 21 25 76 90 1 78