>>784
ちょっと変えて
$n=1;
for ( @a ) { $flag[$_] = $n; $n++; }
とかどうでしょう。