Getting wrong answer minimum popping

Hi, I am getting output 1 for all inputs. unable to figure out what is going wrong.
https: //www.codechef.com/START4B/problems/DEQUEUE

def findmin(n,q,s,f):
    if len(s)==n:
        return 0
    if len(q)<=0:
        return 0
    if f==1:
        s.add(q.pop(0))
    else:
        s.add(q.pop(-1))
    return min(1+findmin(n,q,s,1),1+findmin(n,q,s,0))

def fm(n,q,s):
    return min(1+findmin(n,q,s,1),1+findmin(n,q,s,0))
    
t=int(input())
for i in range(t):
    n,m=map(int,input().split())
    q=list(map(int,input().split()))
    s=set()
    print(fm(n,q,s))
    

Thanks in advance