pandamashenka
08.08.2022 04:38

1 задачу напишите на каком языке программирования вы писали: D. Равенство строк
Ограничение времени 1 секунда
Ограничение памяти 64.0 Мб
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Вася получил две строки
s
s и
t
t длины
n
n каждая. Он хочет написать программу, которая проверит, равны ли эти строки.

Язык программирования, на котором пишет Вася, не имеет инструкции для сравнения строк, зато разрешает проверить два символа на равенство. Вася планирует брать произвольный индекс

i
i, не встречавшийся ранее, после чего проверять на равенство символы

s
i
s
i

и
t
i
t
i

. Как только Вася встретит пару различных символов, он прервет выполнение программы, потому что строки уже гарантированно не равны друг другу. Если все индексы были рассмотрены, программа Васи заканчивает выполнение.

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

Формат ввода
В двух строках вводятся строки
s
,
t
s,t из строчных латинских букв

(
1


s

,

t


1000
)
(1≤∣s∣,∣t∣≤1000) , где

s

∣s∣ - длина строки
s
s.

Формат вывода
Выведите одно число -− максимальное число шагов, которое сделает программа Васи.

Пример
Ввод Вывод
abcd
axcx
3
Примечания
В примере программа Васи может сделать три шага, если проверит на равенство сначала символы « a» , потом символы « c», а потом остановится после проверки пары символов « b» или « x»

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
яирхаФ
20.12.2021 08:36
Function f(x:real):real;
{ возвращает значение функции y(x) для заданного х }
begin
  f:=sqr(x)+4*x+3
end;

var
  a,b,h:real; { начало интервала, конец интервала, шаг }
  x,y:real; { аргумент и значение функции }
begin
  Write('Введите начало интервала, конец и шаг: ');
  Read(a,b,h);
  x:=a;
  while x<=(b+0.001*h) do { 0.001*h добавляем для компенсации погрешности }
    begin Writeln('x=',x,', y=',f(x)); x:=x+h end
end.

Тестовое решение.
Введите начало интервала, конец и шаг: -2 2 0.2
x=-2, y=-1
x=-1.8, y=-0.96
x=-1.6, y=-0.84
x=-1.4, y=-0.64
x=-1.2, y=-0.36
x=-1, y=-4.44089209850063E-16
x=-0.8, y=0.44
x=-0.6, y=0.959999999999999
x=-0.4, y=1.56
x=-0.2, y=2.24
x=-2.77555756156289E-16, y=3
x=0.2, y=3.84
x=0.4, y=4.76
x=0.6, y=5.76
x=0.8, y=6.84
x=1, y=8
x=1.2, y=9.24
x=1.4, y=10.56
x=1.6, y=11.96
x=1.8, y=13.44
x=2, y=15

В решении хорошо видно, как часть чисел из-за погрешности машинного представления отображается неточно. В частности, мы "не попали" точно в х=0 и если бы табуляция шла на интервале [-2;0] с шагом 0.2, то при задании в цикле условия x<=b без компенсации погрешности, мы бы не получили значение для х=0.
0,0(0 оценок)
Ответ:
zalomnovavk
23.11.2021 00:33
Uses crt; var e:array[1..3,1..7] of integer; s,max,n,m:integer;
index,sum:integer;
procedure max_el;
begin max:=e[1,1];
sum:=0;
index:=0;
for n:=1 to 3 do
begin
for m:=1 to 7 do
begin
if e[n,m]>max then
begin
max:=e[n,m];
index:=m;
end;
end;
end;
for n:=1 to 3 do
begin
if e[n,index]<0 then
begin
sum:=sum+e[n,index];
end;
end;
writeln('naibolwiy element = ',max,' summa otricatelnyh= ',sum);
end;
begin
clrscr;
writeln('elementy massiva');
writeln;
randomize;
for n:=1 to 3 do begin for m:=1 to 7 do
begin
e[n,m]:=random(100) -50;
write('',e[n,m],' ');
end;
writeln;
end;
writeln;
writeln;
max_el;
readkey;
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота