<>; for(<>){ if(/^0 (\d+) (\d+) /){ $i=$1; $j=0;$k=$2; for$a($'=~/\w+/g){ $$i{$a}++; ++$j; } die if $j != $k; } if(/^1 (\w+)/){ $a=$1; for$i(1..20,-1){ if($i<0||$$i{$a}){ --$$i{$a}; print$i,$/; last; } } } if(/^2 (\d+)/){ %$1=(); } }