//Create 1000 lockers, all of them start out closed
NSMutableArray *lockers = [[NSMutableArray alloc] initWithCapacity:1000];
for (int i = 0; i < 1000; i++) {
[lockers addObject:@"Closed"];
}
int occurences = 0;
for(NSString *string in lockers) {
if ([string isEqualTo:@"Closed"]) {
occurences++;
}
}
NSLog(@"Number of closed lockers is %i", occurences);
//Assign each person a number corresponding to a locker number
for (int eachPerson; eachPerson < [lockers count]; eachPerson++) {
//Check each number from 1 up to the locker number to see if it is a factor of that number
for (int factor = 1; factor <= eachPerson; factor++) {
//If it is a factor, do something
if (eachPerson % factor == 0) {
//If the locker is closed, open it
if ([lockers objectAtIndex:eachPerson] == @"Closed") {
[lockers replaceObjectAtIndex:eachPerson withObject:@"Open"];
//NSLog(@"Open locker");
}
//If the locker is open, close it
else if ([lockers objectAtIndex:eachPerson] == @"Open") {
[lockers replaceObjectAtIndex:eachPerson withObject:@"Closed"];
//NSLog(@"Close locker");
}
}
}
}
//Check how many lockers are open
int lockersOpen = 0;
for (int count; count < [lockers count]; count++) {
if ([lockers objectAtIndex:count] == @"Open") {
lockersOpen++;
}
}
NSLog(@"Number of opened lockers is %i", lockersOpen);