Eso debes definirlo en funcion de algunas pruebas.
Toma un par de mediciones min max de cuanto tiempo puede llevar el proceso y entonces podrias definir un tamaño de vector que no complique el funcionamiento del sketch y entonces definir cual será la variación de tiempo para tomar las muestras.
En este punto tal vez convenga usar una librería de tiempo como TimeOne u otra.
Con ella puedes determinar en forma precisa cada toma de Aceleración.
Si modificas la rutina levemente y solo llevas la suma de valores, podrias hasta independizarte de la cantidad tomada y solo llevar la cuenta de cuantas muestras has tomado.
Es decir solo haces esto
suma += analogRead(A0); // suma del tipo unsigned long o sea 32 bits
contador++; // tal vez un unsigned int
El único problema con esta sugerencia es cuando terminas el muestreo?
Viendo el video observo que en el proceso del levantamiento hay al menos 3 etapas en las que la velocidad queda en reposo.
Partiendo de V = 0 levantas desde el piso hasta la extensión de los brazos.
Luego puedes llevarla a la altura de los hombros y otra vez V = 0
Y por ultimo el momento final hasta arriba de la cabeza y otra vez V = 0.
Tal vez yo este viendo una situación que no corresponda con tu caso.
No se como se llama tecnicamente a ese levantamiento de pesos desde el suelo.
Si tomas la diferencia entre dos valores en un intervalo de tiempo, entonces cuando esta diferencia sea casi nula o x debajo de un umbral estarías en V = 0 o sea en alguna de las 3 situaciones descriptas.
Dime si estoy analizando correctamente tu problema o no?