В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Евабе
Евабе
25.05.2020 14:47 •  Информатика

Циклическим сдвигом строки s называется строка sksk+1sk+2…s|s|s1s2…sk-1 для некоторого k, здесь |s| - длина строки s. Подстрокой строки s называется строка sisi+1…sj-1sj для некоторых i и j. Вам даны две строки a и b. Выведите количество подстрок строки a, являющихся циклическими сдвигами строки b. abcabc abc 4 2 abcabc acb 0 3 aa 6 4 8 aAa 4

Показать ответ
Ответ:
artur282
artur282
11.02.2023 08:02

ответ:алг т;

нач

Сместится в точку(2,1);

Опустить перо;

Сместится на вектор(0,2);

Сместится на вектор(1,0);

Сместится на вектор(-2,0);

кон.

алг я;

нач

Сместится в точку(1,1);

Опустить перо;

Сместится на вектор(1,1);

Сместится на вектор(0,1);

Сместится на вектор(-1,0);

Сместится на вектор(0,-1);

Сместится на вектор(1,0);

Сместится на вектор(0,-1);

кон.

алг с;

нач

Сместится в точку(3,1);

Опустить перо;

Сместится на вектор(-2,0);

Сместится на вектор(0,2);

Сместится на вектор(2,0);

кон.

Объяснение: на таком примере делай все буквы

0,0(0 оценок)
Ответ:
Совунья11
Совунья11
16.08.2020 07:44
Вот код, написанный в среде PascalABC.NET 3.2 и проверенный в среде Free Pascal (fpc):

const
  n=14;
var
  a,b,c:array[1..n] of integer;
  i:integer;
begin
  Randomize;
  for i:=1 to n do begin
    a[i]:=random(199)-99; // [-99;99]
    Write(a[i],' ');
    b[i]:=random(199)-99; // [-99;99]
    end;
  Writeln;
  for i:=1 to n do Write(b[i],' ');
  Writeln;
  for i:=1 to n do begin c[i]:=a[i]*b[n+1-i]; Write(c[i],' ') end;
  Writeln
end.

Пример
70 92 -92 19 -33 8 10 -37 -87 51 -29 -4 -3 25
20 -69 7 -36 -91 -74 -38 -16 49 -46 93 0 -73 40
2800 -6716 0 1767 1518 392 -160 1406 6438 -4641 1044 -28 207 500

В качестве бонуса и вопроса "в воздух" - та же самая программа, написанная с учетом современных возможностей PascalABC.NET 3.2

begin
  var a:=ArrRandom(14,-99,99); a.Println;
  var b:=ArrRandom(14,-99,99); b.Println;
  var c:=a.Zip(b.Reverse,(x,y)->x*y).ToArray; c.Println
end.

И обещанный вопрос: Если Паскаль, как система программирования, в настоящее время используется только в целях обучения (следовательно, критерий "fpc шире распространен" отпадает), то зачем учиться на давным-давно устаревшей версии? Чтобы писать было сложнее, больше и допускать при этом больше ошибок?

Необходимо получить третий массив, из имеющихся двух массивов а(14) и b(14). посредством перемножени
Необходимо получить третий массив, из имеющихся двух массивов а(14) и b(14). посредством перемножени
Необходимо получить третий массив, из имеющихся двух массивов а(14) и b(14). посредством перемножени
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота