Han pasado siglos desde que monté el blog, no ecribo nada… que desastre He resuelto un test de prueba para la plataforma codility, espero que si alguien lee esto algún día le sirva de algo, el test es este:

A zero-indexed array A consisting of N integers is given. An equilibrium index of this array is any integer P such that 0 ≤ P < N and the sum of elements of lower indices is equal to the sum of elements of higher indices, i.e.

A + A + … + A[P−1] = A[P+1] + … + A[N−2] + A[N−1].

Sum of zero elements is assumed to be equal to 0. This can happen if P = 0 or if P = N−1.

For example, consider the following array A consisting of N = 8 elements:
A = -1
A = 3
A = -4
A = 5
A = 1
A = -6
A = 2
A = 1
P = 1 is an equilibrium index of this array, because:

•A = −1 = A + A + A + A + A + A

P = 3 is an equilibrium index of this array, because:

•A + A + A = −2 = A + A + A + A

P = 7 is also an equilibrium index, because:

•A + A + A + A + A + A + A = 0

and there are no elements with indices greater than 7.

P = 8 is not an equilibrium index, because it does not fulfill the condition 0 ≤ P < N.

Write a function:

class Solution { public int solution(int[] A); }

that, given a zero-indexed array A consisting of N integers, returns any of its equilibrium indices. The function should return −1 if no equilibrium index exists.

For example, given array A shown above, the function may return 1, 3 or 7, as explained above.

Assume that:

•N is an integer within the range [0..100,000];
•each element of array A is an integer within the range [−2,147,483,648..2,147,483,647].

Complexity:

•expected worst-case time complexity is O(N);
•expected worst-case space complexity is O(N), beyond input storage (not counting the storage required for input arguments).

Elements of input arrays can be modified.

Y la solución con un 100% es esta (me ha costado):

``` static int Solution2(int[] A) { int valorPordefecto = -1;```

``` if (A.Length == 0) { return -1; } if (A.Length == 1) { return 0; } if (A.Length == 2) { if (A == 0) { return 1; } if (A == 0) { return 0; } } long left = 0; long right = 0; left = A; for (int g = 2; g <= (A.Length - 1); g++) { right += A[g]; } if (left == right) { return 1; } if (right + A == 0) { return 0; } for (var i = 1; i < A.Length - 1; i++) { if (i == A.Length - 2) { left = 0; for (int k = 0; k < A.Length - 1; k++) { left += A[k]; } if (left == 0) { return A.Length - 1; } else { return valorPordefecto; } } left += A[i]; right -= A[i + 1]; if (left == right) { return i + 1; } } ```

``` return valorPordefecto; } ```

# Harlem Shake de los juniors del Joventut

No soy mucho de fenómenos virales en la red, pero este “Harlem Shake” de los juniors del equipo de Badalona me ha hecho mucha gracia # WordPress 3.5 y la opción de configuración perdida Me ha parecido una buena idea comenzar este blog con algo de WordPress, al fin y al cabo es el motor sobre el que se sustenta esta página y además me encanta lo útil, potente y fácil de instalar y configurar de esta plataforma, al menos… ¡la mayoría de las veces!.

# ¡Hola mundoplano!

Bienvenido, este es un blog acerca de música, cupcakes, programación, viajes, deportes, gadgets y cualquier otra cosa sobre las que nos apetezca escribir, que espero que sea bastante a menudo, os dejo una foto da miña terra galega, si podeis ir algún día os aseguro de que no os arrepentiréis.
Seguir leyendo