**The Celebrity Problem

Problem Link: https://www.codingninjas.com/codestudio/problems/the-celebrity-problem_982769?leftPanelTab=0

def findCelebrity(n, knows):

    # Write your code here. 
    if(n==1):
        return 0
    s=[]
    for i in range(n):
        s.append(i)
    
    while(len(s)>=2):
        a=s.pop()
        b=s.pop()
        if(knows(a,b)):
            s.append(b)
        else:
            s.append(a)
    
    posscel=s.pop()
    for i in range(n):
        if(i!=posscel and knows(posscel,i)==True):
            return -1
        if(i!=posscel and knows(i,posscel)==False):
            return -1
    return posscel

Last updated