Программа Php для проверки того, все ли вращения заданного числа больше или равны заданному числу или нет
Учитывая целое число x , задача состоит в том, чтобы найти, дает ли каждый k-цикловый сдвиг элемента число, большее или равное тому же элементу.
k-циклический сдвиг целого числа x — это функция, которая удаляет последние k цифр числа x и вставляет их в его начало.
Например, k-циклические сдвиги числа 123 равны 312 для k=1 и 231 для k=2 . Выведите Да , если данное условие выполнено, иначе выведите Нет .
Примеры:
Input: x = 123
Output : Yes
The k-cyclic shifts of 123 are 312 for k=1 and 231 for k=2.
Both 312 and 231 are greater than 123.
Input: 2214
Output: No
The k-cyclic shift of 2214 when k=2 is 1422 which is smaller than 2214
Подход: просто найдите все возможные k циклических сдвигов числа и проверьте, все ли они больше заданного числа или нет.
Ниже приведена реализация вышеуказанного подхода:
Временная сложность: O(N 2 ), где N — длина заданной строки. Сначала он запускает цикл для обхода строки, а внутри этой подстроки используется функция. Таким образом, код будет выполняться за время O(N 2 ).
Вспомогательное пространство: O(1), дополнительное пространство не требуется, так что это константа.
Пожалуйста, обратитесь к полной статье о проверке того, все ли вращения данного числа больше или равны данному числу или нет для получения более подробной информации!