Buenas:
Cada lenguaje tiene sus propias particularidades. En el caso de R los bucles se ejecutan muy lentamente. Por tanto, la otra opción es más rápida y "más complicada". Pues lo complicado es ajustarse a las características del lenguaje en uso y no programar en R como si se estuviese programando en C.
Un saludo.