Codesnipp.it Social Code Sharing

Michael Patzer

Locker Problem

by Michael Patzer on Mar 27, 2011

//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);

Can't see the comments? Please login first :)