<>; for(<>){ if(s/^0 (\d+) \d+ //){ for(glob){ ++$h{$_}[$1] } }elsif(/^1 (.*)/){ for(1..20){ if($h{$1}[$_]){ --$h{$1}[$_]; print$_,$/; goto a } } print-1,$/; a: }else{ / (.*)/; for(keys%h){ $h{$_}[$1]=0 } } }