Check whether all the rotations of a given number is greater than or equal to the given number or not

Given an integer x, the task is to find if every k-cycle shift on the element produces a number greater than or equal to the same element.
A k-cyclic shift of an integer x is a function that removes the last k digits of x and inserts them in its beginning.
For example, the k-cyclic shifts of 123 are 312 for k=1 and 231 for k=2. Print Yes if the given condition is satisfied else print No.

Examples:

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

Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: Simply find all the possible k cyclic shifts of the number and check if all are greater than the given number or not.

Below is the implementation of the above approach:

 `# Python3 implementation of the approach ` `def` `CheckKCycles(n, s): ` `    ``ff ``=` `True` `    ``for` `i ``in` `range``(``1``, n): ` ` `  `        ``# Splitting the number at index i  ` `        ``# and adding to the front ` `        ``x ``=` `int``(s[i:] ``+` `s[``0``:i]) ` ` `  `        ``# Checking if the value is greater than  ` `        ``# or equal to the given value ` `        ``if` `(x >``=` `int``(s)): ` `            ``continue` `        ``ff ``=` `False` `        ``break` `    ``if` `(ff): ` `        ``print``(``"Yes"``) ` `    ``else``: ` `        ``print``(``"No"``) ` ` `  `n ``=` `3` `s ``=` `"123"` `CheckKCycles(n, s) `

Output:

```Yes
```

My Personal Notes arrow_drop_up