Count the number of open lockers in school

Carvia Tech | May 19, 2019 | 1 min read | 18 views | Python Coding Problem


School Daze

A group of schools has a specific number of lockers and a specific number of students. All lockers are closed on the first day of school. As students get to school they begin to play with the lockers. The first student opens every locker. The second student begins with the 2nd locker and closes every other locker. The third student starts with the third locker and changes every 3rd locker. That is, the third student opens the locker if it is closed and closes it if it is open. The 4th student starts with locker 4 and changes every 4th locker and so on. After all the students are done, display how many lockers are open.

Test data
Input Output

100, 100

100 Lockers: 100 Students; 10 Open lockers

10, 5

10 Lockers; 5 Students; 6 Open lockers

1000, 50

1000 Lockers; 50 Students; 499 Open lockers

Get Open Lockers
def get_open_lockers(num_lockers, num_students):
    list_lockers = ["open"]*num_lockers # 1st step
    for k in range(2,num_students+1): # others
        for i,j in enumerate(list_lockers):
            if (i+1)>=(k-1):
                if (i+1)%k==0:
                    if list_lockers[i] == "open":
                        list_lockers[i] = "close"
                    else:
                        list_lockers[i] = "open"
    return list_lockers.count("open")


print(get_open_lockers(100, 100))
Output
10

Python Coding Problem:
  1. Write a program to check if the given word is Isogram & Pair isogram in python
  2. Write a python program to find Largest Substring that occurs more than once
  3. Pass the ball game: NxN matrix in python
  4. Write a program for Hailstone Sequence in Python
  5. Find perfect abundant or deficient factors in python
  6. Write a program to find if a number is Lychrel Number in Python
See all articles in Python Coding Problem
Top articles in this category:
  1. Google Data Scientist interview questions with answers
  2. Top 100 interview questions on Data Science & Machine Learning
  3. Write a program to find if a number is Lychrel Number in Python
  4. Pass the ball game: NxN matrix in python
  5. Write a program for Hailstone Sequence in Python
  6. Closest Points
  7. Deploying Keras Model in Production using Flask



Find more on this topic:
Machine Learning image
Machine Learning

Data science, machine learning, python, R, big data, spark, the Jupyter notebook, and much more

Last updated 1 month ago


Recommended books for interview preparation:

This website uses cookies to ensure you get the best experience on our website. more info