Erekcia
14.12.2022 16:59

Submit a solution for c
full score: 100
input file name: input.txt or standard input
output file name: output.txt or standard output
time limit: 1 s
real time limit: 1 s
memory limit: 256m
майже анаграмми
два текстових рядки називаються анаграмами - перший рядок можна отримати із другого перестановкою букв (і навпаки відповідно).

дано два текстових рядки, які виключно із великих літер ійського алфавіту [a-z]. визначте, яку мінімальну кількість букв потрібно викреслити із обох рядків, щоб вони стали анаграмами.

input format
на вхід вводиться два текстові рядки. довжина кожного із рядків не перевищує 1. другий рядок починається з нового абзацу.
output format
у єдиний рядок потрібно вивести число - мінімальну кількість букв, яку потрібно викреслити із обох рядків, щоб вони стали анаграмами.
examples
input output
aazvvcz
dfaazvvv

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
angelikamaxowoz4v
27.02.2020 17:49

Непонятно, что за "надписи".

Предположим, что

1. "бабушка попросила"

2. "взяла лукошко"

3. "подошла к кусту"

4. "сорвала ягоду"

5. "сварили варенье"

тогда логика задачи будет следующей

 

бабушка попросила

Если Маша согласилась тогда

      взяла лукошко

      подошла к кусту

      Если куст с ягодами Тогда

          Пока (на кусте есть ягоды) и (лукошко пустое) Цикл

                  сорвала ягоду

          КонецЦикла

      КонецЕсли

      сварили варенье

КонецЕсли

 

В принципе, если несколько кустов, нужен цикл обхода по кустам пока не наполнится лукошко.

0,0(0 оценок)
Ответ:
dumbschoolkid
26.11.2021 02:12

Объявляем функцию gcd, принимающую два целочисленных параметра и возвращающую их наибольший общий делитель. Здесь это вычисляется при алгоритма Евклида.

Затем для удобства определяем ещё одну функцию gcd3, которая принимает уже три аргумента и, используя указанную в условии формулу и описанную выше функцию gcd, вычисляет НОД от трёх чисел.

В основной части программы просто три числа считываются с клавиатуры и выводится ответ.

Код (PascalABC.NET v3.6.2316):

function gcd(a, b: integer): integer;

begin

 while a * b <> 0 do

   (a, b) := (b, a mod b);

 Result := a + b

end;

function gcd3(a, b, c: integer) := gcd(gcd(a, b), c);

begin

 var (a, b, c) := ReadInteger3;

 print(gcd3(a, b, c))

end.

Пример ввода:

10 40 20

Пример вывода:

10

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