Программа Php для проверки того, все ли вращения заданного числа больше или равны заданному числу или нет

Опубликовано: 19 Сентября, 2022

Учитывая целое число 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), дополнительное пространство не требуется, так что это константа.

Пожалуйста, обратитесь к полной статье о проверке того, все ли вращения данного числа больше или равны данному числу или нет для получения более подробной информации!