My solution is running on linear time but even after i am getting TLE.
For loop of test cases you have given condition while(t–) but it should be while(t–>0).
If you are saying while loop is not terminating then you are wrong because i always use this while loop for testcase and it always works.
I think it is O(1) of substring and I got ac after doing it.
your approach isn’t efficient.
it’s simple:
string with odd length has only one type of character
string with even length: for all i, a[i] must be equal to a[i+2].
https://stackoverflow.com/questions/15400508/string-concatenation-complexity-in-c-and-java
Read this and you will understand that the complexity of your code is not linear.
bro use append function to find l and r. The time complexity would be O(1) for every string.
naive approach -> define 2 strings , 1st one being left-rotation of the original , 2nd being the right-rotation , if they are equal , print yes
for _ in range(int(input())):
s=input()
ans=0
sl=s[1:]+s[0]
sr=s[-1]+s[:-1]
if sl==sr:
print("YES")
else:
print("NO")
okay got it thanks