lo que tengo medio hecho es crearme los arrays necesarios (el triangulo puede ser de varios tamaños), crear un triangulos e ir comprobando que cumple lo de las restas.
Por ejemplo, si el triangulo es de 6 elementos, creo 3 arrays, uno de 3 elementos, uno de 2 elementos y otro de uno. En los arrays meto los numeros del 1 al 6 comprobando que no se repite ninguno. Entonces voy generando triangulos comprobando que el primer elemento menos el seguno del primer array es el primero del segundo, si lo es sigue, y si no vuelve a llamar a la funcion para que empiece de nuevo hasta que me da el triangulo que quiero:
a[0] a[1] a[2]
b[0] b[1]
c[0]
el problema es que para 6 elementos me vale, pero si paso al siguiente tamaño (10) con el que necesito 4 arrays se me desborda.
asi k no se komo enfocarlo, a ver si me podeis echar una mano.
ah y gracias por tus respuestas