dianadiana1982
15.03.2022 19:48

Вова Серых пришёл в гости к Пете Тараканчикову [Введение в ИРС]

Петя решил показать Вове свою коллекцию фотографий многоугольников разного цвета. Когда Петя спросил Вову нравятся ли Вове многоугольники красного цвета на фотографиях, Вова призадумался.

Тогда Петя решил проверить точно ли Вова различает цвета и спросил Вову сколько объектов красного цвета распологается на фотографиях.

Вова тщательно скрывает от всех, в том числе от Пети, что он не различает цвета Вове ответить на вопросы Пети.

Петя будет показывать Вове RGB 1280x1024 фото (пример представлен на рис. ниже), а Вова в тайне от Пети отправит её вам через STDIN.

Пример передаваемого изображения

К сожалению, Вова купил себе смартфон фирмы STpik и на нем очень мало памяти. Поэтому из соображений экономии памяти фото будет подано в следующем формате:

Будет подано 1280 * 1024 шестизначных чисел в шестнадцатеричной системе счисления. Каждое число описывает цвет одного пикселя начиная с верхнего левого угла, двигаясь слева направо, сверху вниз. Числа выглядят как , где это шестнадцатеричное число описывающее значение красного канала в пикселе (при переводе в десятичную оно принимает значения [0, 255]), аналогично описывает зеленый канал в пикселе, а описывает синий.

Вове удалось узнать, что Петя делал фотографии на большом белом столе. Однако освещение от лампы было не очень равномерным, поэтому фон у фото состоит из оттенков серого, белого или черного.

В качестве объектов Петя выбрал замкнутые многоугольники, в которых преобладает один из цветов (красный, синий или зеленый). Объектов смешанного цвета на фото нет.

Для красоты Петя решил, что обьекты разных цветов могут пересекаться, а объекты одного цвета пересекаться не могут.

Учитывайте, что Петя плохой фотограф. Фото получились нечеткими.

Вам необходимо сказать Вове через STDOUT одно целое число — количество обьектов красного цвета на фото.

Формат входных данных
Фото выглядит как 1280 * 1024 шестизначных чисел в шестадцатиричной системе счисления. Каждое число описывает цвет одного пикселя начиная с верхнего левого угла, двигаясь слева направо, сверху вниз. Числа выглядят как , где это шестнадцатеричное число описывающее значение красного канала в пикселе (при переводе в десятичную оно принимает значения [0, 255]), аналогично описывает зеленый канал в пикселе, а описывает синий.

Формат выходных данных
Одно целое число — количество объектов красного цвета на фото

Примечание
Решение должно считывать из стандартного ввода и выводить результат в стандартный вывод. Примеры входных данных представлены по ссылке и не выводятся в самом задании, поскольку займут много места на экране.

Write a program, test using stdin → stdout
ответ напишите на каком то из языков программирования: pyton, pascalabs.net,c#,c++

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
kirillp02
29.03.2020 22:19

Какой оператор цикла желательно использовать, если известно число повторений тела цикла?

repeat <оператор1, …>until <условие>

while <условие>do <оператор>

for <параметр>:= <начальное значение>to<конечное значение> do<оператор>

2. Используется оператор for i:= -10 to 10 do…

После завершения выполнения тела цикла i = 10

3. Цикл в фрагменте программы

p:=1;

repeat

p:=p*0.1

until p>0.1;

будет исполнен:

1 раз

2 раза

бесконечное число раз

0 раз

3 раза

4. Цикл в фрагменте программы

a:=1;

b:=1;

while a+b<8 do

begin

a:=a+1; b:=b+2

end;

выполнится:

0 раз

3 раза

2 раза

1 раз

бесконечное число раз

5. Какой оператор цикла желательно использовать для записи алгоритмической конструкции, изображённой на схеме?

НЕТ СХЕМЫ. ОТВЕТИТЬ НА ВОПРОС НЕВОЗМОЖНО.

while <условие> do <оператор>

for <параметр>:= <начальное значение> to <конечное значение> do <оператор>

repeat <оператор1, …> until <условие>

6. Какой оператор цикла желательно использовать, если известно условие выхода из цикла?

repeat <оператор1, …> until <условие>

for <параметр>:= <начальное значение> to <конечное значение> do <оператор>

while <условие> do <оператор>

7. Определите, какое значение будет выведено на экран в результате выполнения приведенной ниже последовательности операторов:

a:=1; b:=1;

while a<=32 do a:=a*2; b:=b*a;  //Обратите внимание! Нет begin end.

write (b)

32

256

64

128

8. Используется оператор for i:= -5 to 9 do…

При первом выполнении тела цикла i = -5

9. Чему равно значение переменной s после выполнения следующего фрагмента программы

Фрагмента программы нет! Задание решить нельзя!

0,0(0 оценок)
Ответ:
fira2010f
14.07.2020 17:53
var
  str, num: string;

begin
  readln(str); //str := 'Day 10, mice 8: "Year" 7 is a mistake 91.';
  foreach c: char in str do
    if (Char.IsDigit(c)) then
      num += c;
  for j: byte := 1 to length(num) - 2 do
    for i: byte := 1 to length(num) - 1 do
      if (num[i] < num[i + 1]) then
      begin
        str[1] := num[i];
        num[i] := num[i + 1];
        num[i + 1] := str[1];
      end;
  if (Integer.Parse(num) > 0) then
  begin
    while (num[num.Length - 1] = '0') do
      num.Remove(num.Length - 1);
    writeln('Да' + #13 + num);
  end
  else
    writeln('Нет');
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота