素直にインデックス付きが欲しい場合はmapWithIndexとかeachWithIndexじゃダメなの。
あるいはa.zipWithIndex().map(f)とか。