Можно ли из длин этих строк построить возрастающую арифметическую прогрессию? Вводится 3 строки в случайном порядке
Можно ли из длин этих строк построить возрастающую арифметическую прогрессию? Вводится 3 строки в случайном порядке. Напишите программу, которая проверяет возможность построения арифметической прогрессии на основе длин этих строк. Входные данные представлены в формате: три строки, каждая записана на отдельной строке. Программа должна вывести "YES", если возможно построить арифметическую прогрессию, и "NO" в противном случае. Пример ввода 1: abc a abcde Пример вывода 1: YES
04.08.2024 03:09
Описание:
Чтобы определить, можно ли построить возрастающую арифметическую прогрессию на основе длин данных строк, мы должны убедиться, что строки могут быть упорядочены по возрастанию и их длины образуют арифметическую прогрессию.
Мы можем преобразовать строки в числа, используя их длины. Затем, если мы отсортируем полученные числа в порядке возрастания и проверим, являются ли они арифметической прогрессией, мы сможем определить, можно ли построить арифметическую прогрессию.
Для этого нам понадобится использовать следующий алгоритм:
1. Прочитайте вводные данные, содержащие три строки.
2. Преобразуйте строки в числа, используя их длины.
3. Отсортируйте полученные числа в порядке возрастания.
4. Проверьте, являются ли числа арифметической прогрессией с фиксированным шагом. Для этого рассчитайте разность между соседними числами.
5. Если все разности равны друг другу, то можно построить арифметическую прогрессию. В противном случае, нельзя.
Доп. материал:
Ввод:
abc
a
abcde
Вывод:
YES
Совет:
Если вы столкнулись с подобной задачей, полезно определить шаг арифметической прогрессии, что позволит вам проверить, являются ли числа образованной последовательности арифметической прогрессией.
Дополнительное задание:
Ввод:
xyz
abc
mnop
Вывод: