Разноцветные мячи
Для каждой полки нужно определить количество мячей разного цвета. Для этого можно воспользоваться массивом из 10 элементов по количеству цветов и записать в него сколько мячей каждого цвета содержится на каждой полке (двумерный массив: строчек - n, столбцов - 10). После чего остается посчитать количество ненулевых элементов данного массива (количество мячей разного цвета) на каждой полке и сохранить это в одномерном массиве, размерностью n. Выполнив такую операцию, можно найти номер искомой полки, выбрав полку с максимальным номером.
program mych;
var n,m,i,j,k,d,h:integer;
a:array[1..50,1..50] of integer;
b:array[1..50,1..10] of integer;
c:array[1..50] of integer;
begin
readln(n,m);
for i:=1 to n do
begin
for j:=1 to m do
read(a[i,j]);
writeln;
end;
for i:=1 to n do
begin
for j:=1 to m do
begin
for k:=1 to 10 do
if a[i,j]=k then b[i,k]:=b[i,k]+1;
end;end;
for i:=1 to n do
begin
for j:=1 to 10 do
write(b[i,j]:3); writeln;
end;
for i:=1 to n do
begin
for j:=1 to 10 do
if b[i,j]<>0 then c[i]:=c[i]+1;
end;
for i:=1 to n do
write(c[i]:3);
d:=c[1];h:=1;
for i:=1 to n do
if (c[i]>d) then begin d:=c[i];h:=i; end;
writeln(h);
end.
Для каждой полки нужно определить количество мячей разного цвета. Для этого можно воспользоваться массивом из 10 элементов по количеству цветов и записать в него сколько мячей каждого цвета содержится на каждой полке (двумерный массив: строчек - n, столбцов - 10). После чего остается посчитать количество ненулевых элементов данного массива (количество мячей разного цвета) на каждой полке и сохранить это в одномерном массиве, размерностью n. Выполнив такую операцию, можно найти номер искомой полки, выбрав полку с максимальным номером.
- вводим N, M
- вводим от руки массив размерностью n на m, состоящий из чисел от 1 до 10 (номера цветов)
- Формируем второй двумерный массив (по количеству цветов), в котором столбцы - номера цветов, строки - номера полок, на каждом [i,j] -ом месте будет стоять количество цветов j на полке с номером i.
- В сформированном массиве по количеству цветов находим количество ненулевых элементов в каждой строке и записываем значение в одномерный массив размерностью n (по количеству полок)
- Находим максимальный элемент в одномерном массиве и выводим его индекс.
program mych;
var n,m,i,j,k,d,h:integer;
a:array[1..50,1..50] of integer;
b:array[1..50,1..10] of integer;
c:array[1..50] of integer;
begin
readln(n,m);
for i:=1 to n do
begin
for j:=1 to m do
read(a[i,j]);
writeln;
end;
for i:=1 to n do
begin
for j:=1 to m do
begin
for k:=1 to 10 do
if a[i,j]=k then b[i,k]:=b[i,k]+1;
end;end;
for i:=1 to n do
begin
for j:=1 to 10 do
write(b[i,j]:3); writeln;
end;
for i:=1 to n do
begin
for j:=1 to 10 do
if b[i,j]<>0 then c[i]:=c[i]+1;
end;
for i:=1 to n do
write(c[i]:3);
d:=c[1];h:=1;
for i:=1 to n do
if (c[i]>d) then begin d:=c[i];h:=i; end;
writeln(h);
end.
Комментариев нет:
Отправить комментарий