in reply to Please review my code: 100 Doors.

init_doors could be simplified a bit. Even further except you are ignoring element 0 and starting your array use at 1 in other code

sub init_doors() { (undef, ('Closed') x 100); }